ActiveX发布步骤
创建PVK文件[私人密匙文件]
makecert -sk DigitalTitan DigitalTitan.pvk
makecert -n CN=TelStar TelStar
创建CER文件[公司证书]
makecert -sk DigitalTitan.pvk TelStar.cer
创建SPC测试软件出版商证明书
cert2spc root.cer TelStar.cer TelStar.spc
创建INF文件
[version]
signature= "$CHINA$ "
AdvancedINF=2.0
[Add.Code]
WebOffice.ocx=WebOffice.ocx
mfc70.dll=mfc70.dll
msvcrt.dll=msvcrt.dll
olepro32.dll=olepro32.dll
[mfc70.dll]
file-win32-x86=thiscab
FileVersion=7,0,9466,0
DestDir=11
RegisterServer=yes
[msvcrt.dll]
file-win32-x86=thiscab
FileVersion=6,1,9844,0
DestDir=11
RegisterServer=yes
[olepro32.dll]
file-win32-x86=thiscab
FileVersion=5,0,4522,0
DestDir=11
RegisterServer=yes
[WebOffice.ocx]
file-win32-x86=thiscab
clsid={05430EC0-69CA-437A-B1F9-4B78B8647BEA}
FileVersion=1,0,0,1
RegisterServer=yes
;
创建CAB文件
cabarc -s 6144 n WebOffice.cab msvcrt.dll msvcp70.dll msvcr70.dll mfc70.dll olepro32.dll ASYCFILT.DLL STDOLE2.TLB WebOffice.ocx WebOffice.inf
使用Code Signing Wizard签署一个CAB文件
SIGNCODE.exe
时间戳服务:verisign的时间服务器,这个是免费的.
http://timestamp.verisign.com/scripts/timstamp.dll
另:
makeCert -sk DigitalTitanKey -n "CN=TelStar " -ss TelStar TelStar.cer
makecert -is TelStar -ic TelStar.cer -ss TelStarCompany.cer
Cert2SPC MyCert.cer MyCert.spc
打包工具包:
申请证书:Win2000:控制面板-管理工具-证书颁发机构[没有则更新组件]Http://127.0.0.1/CertSrv/
签名工具包:http://download.microsoft.com/download/b/e/f/bef2551b-401d-4311-ab8f-13d3892b8154/codesigningx86.exe
时间戳服务:verisign的时间服务器,这个是免费的.
http://timestamp.verisign.com/scripts/timstamp.dll
-----------------------------------------------------------------------------------------------------------
关于数字签名的问题:
问题现象:在自己编写的DLL之类的东西在WEB上使用的时候会提示ACTIVEX控件不安全或者每次使用时提示安装不安全的ACTIVEX
解决方法:这个方法是俺花了2天时间研究出来的,肯定有不正确的地方,希望各位指正。
使用数字签名可以解决该问题
1、在你的机器上数字签名所需要的工具,叫什么名字不记得了,只晓得是个ZIP文件,叫codesigningx86,是WINDOWS下面使用的,正常解开后会有以下文件:
==============
cabarc.exe
cert2spc.exe
chktrust.exe
makecat.exe
makecert.exe (必须)
makectl.exe
setreg.exe
signcode.exe (必须)
================
以上的可以的微软的站点下载
以上根据需要来确定采用哪些工具,这里我采用了makecert.exe 来制作认证的证书,signcode.来进行数字签名
这时会在你的目录下生成个oranje.pvk和oranje.cer文件,打开.cer文件可以看到是证书信息
颁发给:王成
颁发者:Rooe Agenct
有效起始日期 2003-11-29 到 2040-1-1
好了,有了这个证书可以进一步搞你的DLL或CAB等的认证了
2、进入DOS状态,进入改目录
输入:makecert -sv oranje.pvk -n "CN=王成,
[email protected],O=王成 " oranje.cer
这个是制作证书 -sv是制作加密的文件(好象是的),CN是公司 E=EMail O=认证公司的名称 oranje.cer是生成文件的名称,好象都是以.cer为后缀的
这时制作的证书是没有任何认证公司认证的,听说认证一年需要好几百美金,俺没钱,所以只好自己做个使用了,功能都一样
3、运行Signcode.exe
出现一个数字签名向导
下一步 选择需要签名的文件(dll.ocx.cab等)
下一步 这里选择了自定义
下一步 选择签名证书 从文件选择 选择刚才做好的oranje.cer
下一步 私钥 磁盘上的私钥文件 点浏览选择刚才做好的oranje.pvk
下一步 输入密码
下一步 选择算法,这里我选择的是sha1
下一步 配置证书路径 这里我选择了“证书路径中所有证书,包括根证书”就是默认的
下一步 描述:输入安装证书时提示的文字,随便输入,这里我输入“公文编辑器” WEB位置是点了你输入的东西的链接,我这里输入http://www.cn2cn.com —> 下一步 时间 没做改动
下一步 完成
4、恭喜你,证书制作完毕,马上配置你的CAB或DLL等试试看,第一次运行会出现安装你的证书,以后再运行就不需要了,也不会出现“不安全的ACTIVEX,不让安装”等提示了
5、调试及运行环境
windows 2000 P
IIS 5
-----------------------------------------------------------------------------------------------------------------------------------------------
MSDN中搜索
Q197988
HOWTO: Deploy an ActiveX Control Written in Visual Basic
另MSDN(英文July 2000)中 URL.
mk:@MSITStore:E:/Program%20Files/Microsoft%20Visual%20Studio/MSDN/2000JUL/1033/vbcon98.chm::/Html/vbcondownloadingactivexcomponents.htm
到这个连接, 看完五篇文章,所有有关ActiveX部署,签名,安全的问题统统解决。不懂再问
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon98/html/vbconDownloadingActiveXComponents.asp
Downloading ActiveX Components
---Steps to Prepare Your Component for Download
---Internet Component Download
---Testing your Internet Component Download
---Advanced Customization for Internet Component Download
---Manually Deploying ActiveX Components