关于vs + Qt程序在XP上运行出错

常见错误1:***不是有效的win32应用程序

解决办法:1、使用VS2010、VS2012、VST013等生成兼容XP的程序

在项目上右键选中属性,将“平台工具集”选择“Visual Studio 2013 - Widows XP(v120_xp)

如果你的“平台工具集”里没有这xp的选项,则你需要先更新对应的补丁,具体可在网上搜索。

2、在属性界面,选择“链接器”中的“系统”,修改所需的最低版本为5.01,并且要选择子系统。

 

 

常见错误2无法定位程序输入点 *** 于动态链接库 ***上

解决办法:1、首先查看打包的程序是否缺少某个dll

2、查看所用的QT版本是否能在XP运行,建议使用QT5.6版本,亲测有效。大于5.6的版本不支持在XP上运行,较低的版本可能会有意外的bug出现

3、以上基本可以解决大部分人的问题,接下来说下我在实际操作时遇到的问题。

程序报错:"无法定位程序输入点 GetUserPreferrerdUILanguage 于动态链接库 KERNEL32.dll上"

VS2103 + QT5.6.2,同样的程序在win10和win7下都运行成功,在XP上却一直提示这个错误。经过长时间的查资料后,才找到问题的根源:QT生成的程序缺少一些依赖。然后使用了QT提供的工具windeployqt.exe,使用命令行生成对应的文件到程序目录下(主要是translations文件夹下的qm文件),放到XP上运行,果然成功了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章