it_developer的个人主页

http://www.qtcn.org/bbs/u/192645  [收藏] [复制]

it_developer

  • 1

    关注

  • 33

    粉丝

  • 39

    访客

  • 等级:新手上路
  • 总积分:92
  • 男,1982-01-01

最后登录:2024-04-28

更多资料

日志

Win10 IE11 64位ActiveX 编译(Qt)

2020-04-02 16:01
Win10 IE 程序本身是32位,无论是目录ProgramFiles (x86) Internet Explorer中的iexplore.exe还是目录Program Files Internet Explorer中的iexplore.exe,他们统统都是32位的,确认当前IE32位还是64位的方式也很简单,只需要在地址栏输入:javascript:alert(navigator.userAgent), 弹出的信息提示框中显示内容含Win64,标识是64位的IE;显示内容含Wow64,标识是32位的IE;而64位的ActiveX只能在64位的IE中运行,所有为了使64ActiveXWin10 IE11中能正常运行,我们必须要对安装配置文件INF做必要的处理,接下来具体介绍一下发布支持Win10 IE11 64ActiveX的整个流程。

一、功能模块编译和签名
1、 功能代码模块(DLL)编译模式选为X64,编译完成之后,通过Depends查看依赖关系,并把所有的依赖拷贝到同一个目录下。
2、 对未签名的库文件和依赖文件,一一签名,详细签名方式参照(首先要准备好证书文件,如PFX)https://docs.microsoft.com/zh-cn/dotnet/framework/tools/signtool-exe
3、 签名之后的文件,可以在右键->属性中,看到有个数字签名栏,即表示签名成功。
  
二、INF安装配置文件的编写
1、 [version]   版本信息,一般不需要特别修改的
2、 [Deployment]  部署范围,可以选择本机或者当前用户,如InstallScope=machine
3、 [Strings] 可以定义一些变量,如注册表键值,CLSID路径等信息
4、 [Files.Common] 要安装的文件列表,如Qt5Core.dll=Qt5Core.dll Qt5Gui.dll=Qt5Gui.dll
5、 [Files.Inf] 插件安装信息,如InfFile=KuXun.inf
6、 [DestinationDirs] 安装目录,含安装文件和安装配置文件路径,这个路径使用dirids 标识,详细的枚举值参加微软(https://docs.microsoft.com/en-us/windows-hardware/drivers/install/using-dirids
7、 安装文件的具体配置信息,如
       [kuxun.dll]
file-win32-x86=thiscab (网上有传要是64位,把file-win32-x86改为file,实践发现,这个不是必须的)
clsid={A348F6CC-765E-4218-B57D-2B9231EG0009}
RegisterServer=yes  
RedirectToHKCU=yes
FileVersion=1,0,0
[Qt5Core.dll]
file-win32-x86=thiscab  
RegisterServer=no

FileVersion=1,0,0
8、 [RegisterFiles]  要注册的模块,如 %11%%AppPath%kuxun.dll
9、     [RegSettings] 设置注册表的键值,类型要注意一下0x00000000 字符串,   0x00010001Dword类型,如HKCR,%Kuxn%,Version,0x00000000,"1,0,0";KCU,% Kuxn %,TabProcGrowth,0x00010001,0


三、ActiveX控件发布
简单编写一个HTML程序,同时搭建一个IIS服务,就可以测试上面的控件功能了,我这边测试如下图:



四、结束语
支持Win10 IE11 64bitActiveX发布基本流程就这些了,接下来有机会再分享一下使用Qt如何开发ActiveX控件,如有兴趣,可以私聊沟通,谢谢!
微信、电话(18019436577) Email: wangxy@apps121.com
分类:默认分类|回复:0|浏览:570|全站可见|转载
 

Powered by phpwind v8.7 Certificate Copyright Time now is:04-29 18:51
©2005-2016 QTCN开发网 版权所有 Gzip disabled