本博客住主要介绍QT出现的问题:关于@@QEAA@QEAV0@@XZ或Z于动态链接库exe上的错误弹出的解决方式。
平台:VS2015+QT5.8;
问题出现缘由:在VS上Realease和Debug模式下都可以正常运行程序,都可以生成exe文件。Debug模式下生成的exe文件可以直接双击打开,没有出现错误;并且在Release模式下生产的exe双击都会出现错误。如右图所示:
#a:4:e:6:4:5:e:a:8:5:5:c:8:9:7:8:c:4:2:5:7:5:1:9:9:a:1:7:c:5:3:0#
最开始出现的问题是关于toLocal8Bit@QString@@QEAA@QEAV0@@XZ于动态链接库exe上,以为是使用toLocal8Bit引起的粗无,于是将toLocal8Bit改为toUTF8,又出现toUTF8@QString@@QEAA@QEAV0@@XZ于动态链接库exe上问题,于是继续改为toStdString等转换,又出现类似错误。使用QT工具将程序打包没有出现错误,打包后双击exe还是出现错误。查了好多资料,网上没发觉相关解决方式,根据网上类似的方式改了还是出错,改了三天没有解决后,看网上说关于环境变量路径的问题。于是查看笔记本环境变量,发觉上面没有QT相关的路径,于是在VS工程属性中,如右图所示,找到环境路径(图中D:\G\QT\Qt5.8.0\5.8\msvc2015_64\bin)加到笔记本系统的环境变量中,移到最前面,解决问题!
#4:6:e:2:d:d:8:0:b:f:b:8:0:9:4:5:3:f:4:f:9:0:d:f:8:d:0:2:5:9:7:9#
#a:1:e:3:c:a:1:f:1:a:4:a:4:8:7:7:d:b:1:c:e:6:5:a:e:4:3:c:3:8:3:3#
困惑的问题,记录出来,希望对别人有所帮助。