QT Creator程序,Release模式下能正常运行, 但是打包好后的程序(.exe)无法找到输入点
- Release能正常运行,使用windeployqt.exe打包后,运行UI.exe报错,这个问题其实是很简单解决的,主要问题还是没有将正确的.dll文件拷贝到打包后的UI.exe同路径。
- windeployqt发布后,直接运行UI.exe会提示缺少.dll(可能缺少多个.dll),这种错误只需要将对应的.dll复制过来就能运行了;但是当我将所有的.dll复制完成后,还是无法找到程序输入点(_ZN12…\UI.exe)。
- 我这里是因为在今天发布的版本里,新增了QTcpSocket模块,在.pro文件里添加了QT += network;Release模式运行后对应的动态库链接也会更新,而我还是将之前版本里的Core.dll拷贝到今天发布的UI.exe路径下,才会报错。
解决方法:
-将今天Release正常运行生成的Core.dll复制到今天发布的UI.exe路径下
-再根据提示加入Qt5Network.dll,双击UI.exe就能运行了
-对比两个版本的Core.dll会发现大小是不一样的:
总结:
这是很低级的错误,放在这里当做警示。
每次打包后,都需要把对应所需要所有的.dll复制过来。