首页 > 编程知识 正文

qt打开别人的项目运行不了(windowsinstaller程序包问题)

时间:2023-05-04 23:51:09 阅读:64520 作者:618

本文是对文章: https://MP.csdn.net/MP _ blog/creation/editor/116641563的补充。

最近,用qt连接到mysql数据库,遇到了不能运行的问题和数据库不能连接的问题。 虽然在开发机中很普遍,但是打包拿到其他桌子上就不行了。 现在可以运行了,无法连接到数据库。 后来我发现实际上组件越来越少了。 这两个问题都用同样的方法解决了。 记在这里,顺便补充一下前面的内容。

一般来说,我们在开发电脑上可以正常工作的东西,但是如果发布到其他电脑上安装的话,就容易发生问题。 如果组件不足,软件将提示缺少什么文件。 将相应的组件添加到运行目录中即可,但某些组件软件运行时不会提供。 例如,我是复制了所有可能的. dll文件,还是提示了错误?

这种时候需要用工具分析。 我们还没有几个. dll文件吗? 首先,在release模式下编译工程文件,然后打开并运行编译路径下的. exe。 接下来,使用Process Explorer软件确定生成的文件中少了哪些组件。 少了之后,从适当的路径中找到它,复制到我们的目标文件或计算机中。

要显示. dll列表,必须按如下方式简单配置软件:

接下来,双击你的软件,你可以看到下面软件运行链接的库中有什么。 不要在意系统组件,只要复制其他组件在此列表中但不在目标文件下的组件即可。

复制完成后,运行软件即可运行。 也可以这样搜索和解决,包括数据库驱动程序无法加载等问题。 如果对它们进行操作后仍然存在问题,则必须检查所使用的编译器和系统的位数是否不匹配,或者组件的位数和目标PC的系统的位数是否匹配。 例如,使用32位编译器或组件在64位系统上运行时,很可能会发生错误。 当然,该PC上运行哪个软件的系统组件可能会减少,但这需要慢慢查找。 可以使用DependencyWalker查看软件的dll状态。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。