Qt写的程序怎么在其他电脑上运行?

时间:2021-07-18 00:08:21
在其他电脑上运行会提示少了好多.dll文件,如mingwm10.dll、QtCore4.dll、QtGui4.dll,怎么做才能让程序直接发给别人就可以用?

3 个解决方案

#1


这些要在你Qt的安装文件夹里的bin文件夹下找,找到后放到你的工程文件夹下。我的是在D:\QtSDK\Desktop\Qt\4.8.0\mingw\bin里面找的。

Qt的安装文件夹下有很多同名的,比如之前QtNetworkd4.dll这个,Qt的安装文件夹下有很多个,分别在不同的文件夹下,刚开始随便找一个,双击exe文件就是不行,总提示出错。后来发现缺少的文件要都在D:\QtSDK\Desktop\Qt\4.8.0\mingw\bin里面找才行,所以重新找一个就行了。不知道是不是真的这样

#2


用procexp找dll。

#3


在你的程序启动后使用ProcessExplorer查看依赖的文件(使用DEPENDS.EXE看的依赖是不全的,有很多是在程序运行时才依赖的)
1.将依赖的QtCore4.dll、QtGui4.dll这一类的文件直接放在你的程序目录下就可以;
2.类似于QML等程序也许还会依赖于插件目录等文件(你的Qt安装程序下plugins、qml等目录里的文件),将目录下这些依赖的文件放在你程序的目录下(保留原来的目录结构即可)

#1


这些要在你Qt的安装文件夹里的bin文件夹下找,找到后放到你的工程文件夹下。我的是在D:\QtSDK\Desktop\Qt\4.8.0\mingw\bin里面找的。

Qt的安装文件夹下有很多同名的,比如之前QtNetworkd4.dll这个,Qt的安装文件夹下有很多个,分别在不同的文件夹下,刚开始随便找一个,双击exe文件就是不行,总提示出错。后来发现缺少的文件要都在D:\QtSDK\Desktop\Qt\4.8.0\mingw\bin里面找才行,所以重新找一个就行了。不知道是不是真的这样

#2


用procexp找dll。

#3


在你的程序启动后使用ProcessExplorer查看依赖的文件(使用DEPENDS.EXE看的依赖是不全的,有很多是在程序运行时才依赖的)
1.将依赖的QtCore4.dll、QtGui4.dll这一类的文件直接放在你的程序目录下就可以;
2.类似于QML等程序也许还会依赖于插件目录等文件(你的Qt安装程序下plugins、qml等目录里的文件),将目录下这些依赖的文件放在你程序的目录下(保留原来的目录结构即可)