读书人

mfc的activex打包成cab文件后无法安

发布时间: 2012-02-21 16:26:23 作者: rapoo

mfc的activex,打包成cab文件后无法安装使用
用MFC新建一Activex工程,编译后(MFC库静态编译),生成ocx,clsid是41B47134-9D98-4A4B-A56D-D73201F5DFB6
, 编写了一inf文件
[version]
signature="$xxx$"
AdvancedINF=1.0
[Add.Code]
x.ocx=x.ocx
[x.ocx]
file-win32-x86=thiscab
clsid={41B47134-9D98-4A4B-A56D-D73201F5DFB6}
FileVersion=1,0,0,1
RegisterServer=yes

然后我打包成一个cab文件。之后给cab文件添加了证书。

ie浏览器允许了所有activex。

用vc自带的ActiveX Control Test Container正常。

嵌入到网页中:

<object id='aa' codeBase=x.cab#version=1,0,0,1 classid='clsid:41B47134-9D98-4A4B-A56D-D73201F5DFB6' height=110 width=110 >
</object>

总是显示一个红色的交叉。失败了。

我搞了很长时间都无法调通。

请高手们指教。。。。

[解决办法]
http://www.cnblogs.com/chinhr/archive/2008/02/25/1080775.html
http://blog.csdn.net/MLiang/archive/2006/03/31/645431.aspx
http://blog.csdn.net/MLiang/archive/2006/03/31/645824.aspx
[解决办法]
[version]
signature="$CHINA$"
AdvancedINF=1.0

[Add.Code]
activex_register.ocx=activex_register.ocx

[activex_register.ocx]
file-win32-x86=thiscab
RegisterServer=yes
clsid={4A9306B6-FF17-46CD-BFDA-AB50F8C3DDEA}
DestDir=11
FileVersion=1,0,0,0
[解决办法]
楼主,你ocx控件的clsid是根据什么得来的,你的控件里面只有一个接口还是有多个接口。
[解决办法]
你是在开发机上测试的吗,注意一下在 download file 下面有有没有残余的代码

使用 CMD 查看一下有没有 隐藏的文件夹(冲突文件),如果有的话删除一下

读书人网 >VC/MFC

热点推荐