cab包安装activex控件并运行exe的常见问题 activex officecab

CAB包是发布activex控件的常用方法,cab包里面包含一个inf文件,对控件安装过程进行描述。这里有关于inf文件的说明。http://msdn.microsoft.com/en-us/library/aa741215(v=vs.85).aspx#infhooksyntax
一般来说cab包下载、安装、注册控件是没有问题的,但是如果希望cab包在安装过程中执行一个exe,该怎么办呢?
(一)setup hook 可以帮助你解决这个问题。setup hook分为有条件和无条件两种。有条件的setup hook只有满足一定条件时才执行。因此,可以打一个msi格式的安装包,然后采用setup hook的方式安装:[Add.Code] mycontrol.dll=mycontrol.dll [hook.mycontrol]
run=msiexec.exe /i %EXTRACT_DIR%mycontrol.msi/qb
cab包安装activex控件并运行exe的常见问题 activex officecab
setup hook 在windowsxp下一般不会遇到问题,但是到了vista以上的操作系统,就会遇到麻烦。因为它会拒绝执行非CAB里面的exe文件。
如果遇到这个问题,可以考虑自己写一个非常小的PrepareInstall.exe,它来运行msiexec.exe。将PrepareInstall.exe打包进cab包。你的inf文件可能是这样:[Setup Hooks]
preInstall=preInstall

[preInstall]
run="%EXTRACT_DIR%PrepareInstall.exe" %OBJECT_DIR%
注意,以上代码在vista还是会遇到问题,因为路径。run="""%EXTRACT_DIR%PrepareInstall.exe"""有木有!需要3个双引号!!
(二) 直接把exe作为资源打包到控件
控件释放资源并运行exe采用CreateProcess或者ShellExecuteEx方法。这个方法,vista和win7可是要弹出提示信息的哦!

  

爱华网本文地址 » http://www.aihuau.com/a/25101011/47692.html

更多阅读

如何安装ocx控件 inf 安装

如何安装ocx控件——简介正确使用中华粮网网上交易密钥,需要安装ActiveX控件。怎么办教大家!如何安装ocx控件——工具/原料ActiveX控件如何安装ocx控件——方法/步骤如何安装ocx控件 1、

怎样使用C#的月历MonthCalendar 控件 c panel控件的使用

怎样使用C#的月历【MonthCalendar】控件——简介 C#中的日历控件【MonthCalendar】是比较常用的一个控件,可以让用户对日期进行快速的查看和设置、也可以选择一段所需要的日期时间段。 下面介绍一下几种日历控件常用的使用方法。怎

招商银行网上银行安全控件下载安装 招商银行网上支付控件

招商银行网上银行安全控件下载安装——简介不管是哪一个银行的网上银行都是需要安装安全控件才可以使用密码登陆上去,建议在下载安装招商银行安全控件的时候不要开启其它的软件或网页。招商银行网上银行安全控件下载安装——下载招

声明:《cab包安装activex控件并运行exe的常见问题 activex officecab》为网友幻成空分享!如侵犯到您的合法权益请联系我们删除