用MFC编写的一个OCX控件,已经实现了安全接口,参照以下链接进行
http://jiangsy1107.blog.sohu.com/201048568.html
自己在XP环境下制作了数字证书(win7下无法制作,这点应该大部分人都知道),对OCX控件进行了数字签名编写的INF文件内容如下:
[Version]
Signature="$CHICAGO$"
AdvancedINF=2.0[Add.Code]
Client.ocx=Client.ocx
[Client.ocx]
file-win32-x86=thiscab
clsid={91C911CA-01D7-46B3-A02D-C95E35B02385}
FileVersion=1,0,0,1
RegisterServer=yes
DestDir=10之后利用IEXPRESS对Client.ocx和Client.inf进行了打包,生成CAB包
之后又对CAB包签名之......在IIS下部署一个静态页面Client.htm,将cab包放在静态页面同一目录下,静态页面中加载的代码如下:
<OBJECT ID="ClientOcx01" WIDTH="0" HEIGHT="0"
 CLASSID="CLSID:91C911CA-01D7-46B3-A02D-C95E35B02385" CODEBASE="Client.CAB #version=1,0,0,1">在本地直接用IE浏览器打开静态页面,有提示安装OCX控件,但是用
http://192.168.22.90:8081/访问,IE浏览器无任何反应......已添加可信任站点,已调低浏览器安全设置,放开所有ActiveX相关的安全选项......本人Win7系统,IE9浏览器,专门注册了CSDN求解决!!ocxcabIIS

解决方案 »

  1.   

    CODEBASE="Client.CAB ,我想这里应该填写组件的网络路径,不然这个网页下载到客户端IE中,它就不知道从哪里下载组件了,类似CODEBASE="192.168.22.90:8081/Client.CAB 
      

  2.   

    哎呀,大侠又碰见你了,幸会啊~路径那个我已经试过了
    http://192.168.22.90:8081/Client.CAB
    192.168.22.90:8081/Client.CAB
    Client.CAB
    ...
    都没有用关键是浏览器都没有反应,直接打开的时候还能弹出安装提示,用网址访问啥提示都没有
      

  3.   

    哎呀,大侠又碰见你了,幸会啊~路径那个我已经试过了
    http://192.168.22.90:8081/Client.CAB
    192.168.22.90:8081/Client.CAB
    Client.CAB
    ...
    都没有用关键是浏览器都没有反应,直接打开的时候还能弹出安装提示,用网址访问啥提示都没有
    不能用在浏览器中访问,放在那个网页的CODEBASE中.
    还有就是inf文件不能写错了
      

  4.   

    哎呀,大侠又碰见你了,幸会啊~路径那个我已经试过了
    http://192.168.22.90:8081/Client.CAB
    192.168.22.90:8081/Client.CAB
    Client.CAB
    ...
    都没有用关键是浏览器都没有反应,直接打开的时候还能弹出安装提示,用网址访问啥提示都没有
    不能用在浏览器中访问,放在那个网页的CODEBASE中.
    还有就是inf文件不能写错了
    我指的是在codebase=后面那一串路径,那个已经试过多种写法了我的inf文件应该不会有错吧,那么简短~
      

  5.   

    问题解决了,肯定所有人都想不到问题在哪!CODEBASE="Client.CAB #version=1,0,0,1这句话,cab和#之间有个空格,删掉空格问题就没了,我晕!!