数字签名的exe文件,网页打开后,为什么每次都提示下载?可否只下载一次安装即可?谢谢帮助

booksfount 2006-05-26 11:34:37
网上查询了一些资料,做个一个exe文件,可以自解压安装的一个ie的插件

不过因为安装问题,就做了数字签名。可是,每次打开这个网页都提示下载安装。能否检测到用户已经下载安装过了,就不提示了。
网页中的代码如下:

<object type="application/x-oleobject" codebase="ZhiSetup.exe#version=1.0.0.3"></object>

网页的version=1.0.0.3我也没有修改,刷新网页,就提示?


谢谢帮助,可否第二次不让出现提示了?
...全文
838 点赞 收藏 23
写回复
23 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xxuu503 2006-05-31
pisces_fri(火星) ( ) 信誉:100 2006-5-29 15:57:24 得分: 25



VS 有个Package & Deployment Wizard可以专门制作Internet Package的



可惜VB专用的
回复
booksfount 2006-05-30
虽然还是没有解决。 还是感谢大家的帮助,谢谢!结贴了
回复
booksfount 2006-05-29
to :pisces_fri(火星)
我试验看看
回复
pisces_fri 2006-05-29
VS 有个Package & Deployment Wizard可以专门制作Internet Package的
回复
booksfount 2006-05-27
还是不行啊???
回复
booksfount 2006-05-26
网页中的代码我还是这样写?可以么?
<object type="application/x-oleobject" codebase="ZHIcab.cab#version=1.0.0.2"></object>

cab已经做好了,控件也加载了,可是重新打开网页还会有提示 安全设置警告(没有安装界面了),就是说,还是加载了上面的代码?可否不出现提示?
另外version=1.0.0.2是起什么作用的。我的inf的文件中一段代码如下:


; needed DLL
[DelphiBand.dll]
file-win32-x86=thiscab
clsid={214438A3-。。。。。} //省略
FileVersion=1,0,0,2
RegisterServer=yes

[ieshow.dll]
file-win32-x86=thiscab
clsid={509A9F13。。。。} //省略
FileVersion=1,0,0,2
RegisterServer=yes
; end of INF file

版本没有判断?我不太懂?谢谢帮助
回复
booksfount 2006-05-26
哦,我试验看看
回复
是是非非 2006-05-26
改成CAB的

别用exe格式
回复
booksfount 2006-05-26
up
回复
slawdan 2006-05-26
mark
回复
booksfount 2006-05-26
我是不是应该把
FileVersion=1,0,0,2 全部修改1.0.0.2 测试看看,会不会这个问题呢?
回复
xxuu503 2006-05-26
MARK


刚好用上



3KS
回复
booksfount 2006-05-26
这个目录没有?
我到整个c:盘都没找到
回复
是是非非 2006-05-26
C:\Windows\Downloaded Program Files

你到这个目录看看
回复
booksfount 2006-05-26
我在ie上,在自己的机器上测试的,利用本机的iis
不行。
回复
booksfount 2006-05-26
我用delphi写的程序

打包用的是:
cabarc -s 6144 n ZHIcab.cab DelphiBand.dll ieshow.dll Zhi.inf


签名工具用的是网络上下载的一个工具
网址如下:
数字签名教程请看
http://www.cnblogs.com/babyt/articles/118264.html
http://www.cnblogs.com/babyt/articles/118302.html
http://www.cnblogs.com/babyt/articles/118309.html

按照上面的方法数字签名的。
回复
booksfount 2006-05-26
我的inf全文是这样的。

[version]
; version signature (same for both NT and Win95) do not remove
signature="$CHINA$"
AdvancedINF=2.0

[Add.Code]
DelphiBand.dll=DelphiBand.dll
ieshow.dll=ieshow.dll

[DestinationDirs]
DLLSysCopy=11
IniWinCopy=25

; needed DLL
[DelphiBand.dll]
file-win32-x86=thiscab
clsid={214438A3...}
FileVersion=1,0,0,2
RegisterServer=yes

[ieshow.dll]
file-win32-x86=thiscab
clsid={509A9F13.....}
FileVersion=1,0,0,2
RegisterServer=yes
; end of INF file


是不是inf写的有什么问题。就是发布两个dll,并且自动注册。

而且我发现ie插件装载后,并没有在c:盘发现 那两个dll文件,但是注册上了啊。也找不到cab文件。那是依据什么注册的?版本怎么判断?

[DestinationDirs]
DLLSysCopy=11 指的是c盘的目录么???
回复
是是非非 2006-05-26
你用什么写的什么程序,用什么打包的?
INF正确吗?
在IE上调用是否正常?
回复
booksfount 2006-05-26
version=1.0.0.2

这个是用来控制版本的,当发现本地安装的版本和这个不一样的时候,就会去下载安装包
否则不会去下载
-----------------

这个和本地的应该是一样的了。是不是 数字签名的问题,导致的每次都下载。
是怎么判断版本号的?是根据inf中的,和codebase="ZHIcab.cab#version=1,0,0,2 中的对比么?我已经下载了一次了,版本应该一样了。那第二次打开还下载就是 数字签名的问题 么?
回复
是是非非 2006-05-26
1、你去买一个Versign的数字签名,1K美刀左右吧
2、为你的控件实现相应的安全接口
3、版本号码一定要正确,否则会出现很多意想不到的意外
回复
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2006-05-26 11:34
社区公告
暂无公告