加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

将Qt 动态链接生成的exe及依赖dll打包方法

发布时间:2020-12-14 05:27:50 所属栏目:百科 来源:网络整理
导读:原文: http://www.qtcn.org/bbs/read-htm-tid-53333.html ,我仅仅是没有带图片,懒得上图,然后修改了下载链接。 ? Qt静态编译链接生成的exe文件,不需依赖七大姑八大姨的一堆dll,可以独立运行,发布很方便。但绝大多数用的都是Qt开源版本,如果用静态链


原文:http://www.qtcn.org/bbs/read-htm-tid-53333.html,我仅仅是没有带图片,懒得上图,然后修改了下载链接。

?

Qt静态编译链接生成的exe文件,不需依赖七大姑八大姨的一堆dll,可以独立运行,发布很方便。但绝大多数用的都是Qt开源版本,如果用静态链接,会有些限制。那有没有办法即能享受静态编译的方便,又不受开源许可的限制呢?方法之一,就是用动态编译,然后把exe和需要的dll整合成一个文件,问题就解决了。

?

1?具体步骤:

1.1??先动态编译链接,生成exe文件

1.2?找到依赖的dll文件

这里,我们可以用Process Explore来获取所依赖的dll文件
下载:http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
打开procexp.exe,通过菜单View==》Lower Pane View==》DLLs??勾选,显示dll窗口,同时勾选Show Lower Pane。

这里,我们以test.exe为例,在Qt环境下,将exe运行起来,在ProcessExplor中,找到就可以找到test.exe,选中,在下面就看到依赖的dll了。

系统目录下的,一般不用关心,按Path排序,看Qt目录及mingw目录下的,将这些dll拷贝出来,单独放到一个目录下。?

1.3??打包

打包工具,这里选用Enigma Virtual Box,为free的软件。

下载:http://enigmaprotector.com/assets/files/enigmavb.exe安装,运行

Enter Input File Name中,选择exe

Enter Output File Name,输出文件名称

点Add按钮,将前面准备好的dll文件,添加进来

点Files Options,勾选Enable Files Virtualization和Compress files,OK

最后,点Process,大告成。打包生成的exe文件也可以象静态编译的一样,可以独立运行了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读