用Activex控件(cab)自动部署软件:Activex开发和发布过程与总结。
来源:互联网 发布:手机视频剪辑软件中文 编辑:程序博客网 时间:2024/05/18 03:36
引言就不写了,直接讲过程,希望对大家有帮助。
-----------------------------------------------------------------------------------------------------------------
开发环境:WIN7 VS2010
目的:通过IE,自动部署软件。
总的过程:1.制作好要部署软件的安装包,2.创建一个Activex控件,在控件注册函数里执行安装包,3.编写INF文件,4,把安装包,Activex控件(dll或ocx),INF文件打包成cab,5.网页通过<OBJECT>标签加载cab包。(注:打数字签名就不阐述了)
----------------------------------------------------------------------------------------------------------------
一、Activex控件的开发
1.用VS创建一个ATL项目,属性默认,直接点完成就行。
2.在控件注册函数DllRegisterServer():里执行你的安装包:(解决方案视图-》打开ALT项目名的cpp文件)
ShellExecute(NULL,_T("open"),m_sSteupFilePath,NULL,NULL,SW_SHOWNORMAL);
3.为ATL项目添加个“ALT控件”:右击项目-》添加类-》ATL控件。
4.得到CLSID:项目解决方案视图里会有个后缀会“idl”的文件,
library AtlstudyLib{ importlib("stdole2.tlb"); [ uuid(9A66B5F0-3479-463E-9F4D-333BEC742E2E), //这个就是需要的CLSID control ] coclass test { [default] interface Itest; };};
或者
在添加ATL控件后,解决方案视图里会增加一个htm的测试网页文件,打开,里面就是需要的<OBJECT>标签源码
二、编写INF文件
文件代码如下(取掉了其他可有可无的语句):
[version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
Atlstudy.dll=Atlstudy.dll
STEUP.exe=STEUP.exe
[STEUP.exe]
file-win32-x86=thiscab
DestDir=11
FileVersion=1,0,0,1
[Atlstudy.dll]
file-win32-x86=thiscab
clsid={9A66B5F0-3479-463E-9F4D-333BEC742E2E}
DestDir=11
RegisterServer=yes
FileVersion=1,0,0,1
------------------------------------------
三、编写网页代码(打包cab包软件和证书签名工具可以看我发布的资源)
<OBJECT ID="Client" CLASSID="CLSID:9A66B5F0-3479-463E-9F4D-333BEC742E2E" codebase="ok.cab#version=1,0,0,1"></OBJECT>
把cab包和测试网页放在同一目录。
四、要注意的地方
1、Activex控件,INF,网页代码里的版本号书写需要一致,并且是用“,”逗号隔开的。这样控件的注册只会执行一次。
2、解释下三个版本号的作用:(按执行的先后顺序)
网页里的版本号:用来判断是否执行INF文件。(跟控件版本号做比较)
INF的版本号:用来判断是否需要重新注册控件。(跟控件版本号做比较)
控件版本号:用来判断是否替换原有控件(版本号一样不替换),注册成功后控件的版本号也就是上面两个所比较的对象。
所以:当网页的版本号跟已注册控件版本号一样时,不管你INF文件版号和控件版本号跟原来的是否更新了,都是不会再执行的。其他同理。
- 用Activex控件(cab)自动部署软件:Activex开发和发布过程与总结。
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结[转]
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- Web发布cab文件打包的ActiveX控件总结
- 发布ActiveX控件(把ocx做成cab发布) --activex数字签名
- 自动激活ActiveX控件与签名\发布
- 使用Cab包部署ActiveX控件
- 使用Cab包部署ActiveX控件
- <实用>使用Cab包部署ActiveX控件
- 公布ActiveX控件(把ocx做成cab发布) -activex数字签名
- VC 工作区中的类突然消失不见而对应的CPP和H文件还在
- Joomla远程上传漏洞 可直接getshell
- ARM&LINUX学习笔记(5)-----ADS建立工程
- [源代码]WIN32 SDK界面研究<1>:模仿Windows命令行或telnet客户端的窗口
- JS 跨域访问的几种方式
- 用Activex控件(cab)自动部署软件:Activex开发和发布过程与总结。
- js的内置对象
- opencv检测人脸
- 优秀CIO应注重企业机构整合
- Linux makefile 教程 非常详细,且易懂 .
- hbm2ddl.auto设置为update时不能工作排查方法!
- STL以及内存以及类的默认函数-题目
- js事件
- 浅谈 java 设计模式--工厂方法模式(Factory Method pattern)