描述:
inf内容:
[version]
signature="$Chicago$"
AdvancedINF=2.0
[Add.Code]
polygon.dll=polygon.dll
[polygon.dll]
file-win32-x86=thiscab
clsid={B8F3536A-E9AE-4EC8-ABAD-9E1B359896A7}
FileVersion=1,0,0,1
DestDir=10
RegisterServer=yes
网页内容:
<OBJECT ID="PolyCtl" CLASSID="CLSID:CF579B69-0D3B-4CF9-B119-696F8A90CD44" CODEBASE="PolyGon.cab#version=1,0,0,1"></OBJECT>
<SCRIPT LANGUAGE="VBScript">
问题:
在网页中用CODEBASE="PolyGon.cab#version=1,0,0,1",即用cab,在ie中提示无法验证发行者,是否确认安装?点击安装后,没有任何相应,查看WINDOWS\Downloaded Program Files,没有正确下载。
改成CODEBASE="PolyGon.dll#version=1,0,0,1",则能够正常下载,控件能正常使用。奇怪了,怎么回事呢?我还有其他的控件要打包呢,否则我就对付用了。
解决方案1:
我也碰到了这个问题,做签名也没用
解决方案2: 现在的cab都需要有数字签名,否则IE直接就不允许下载更不用说安装啦。(我的IE7就是这样,呵呵IE6上还没测试)
建议楼主做数字签名后再试。
:D
解决方案4: 不止一个dll的话你需要在inf文件中将com信息写到注册表里面
你可以下载flash.cab这个包,里面的东西很详细,参考一下。我做的时候就是参考这个做的。
如果只有一个dll文件的话,不要inf文件,直接将dll打包。
调用方法就是这样就好了
<OBJECT ID="PolyCtl" CLASSID="CLSID:CF579B69-0D3B-4CF9-B119-696F8A90CD44" CODEBASE="PolyGon.cab#version=1,0,0,1"></OBJECT>
<SCRIPT LANGUAGE="VBScript">