我在Linux上用QTcreator编写了一个程序,当我试图将它移植到windows时。 程序编译没有任何错误。 但是当我运行该程序时,它会自动退出 启动C:\ Projects \ LIG \ debug \ LIGenerator.exe ...
C:\ Projects \ LIG \ debug \ LIGenerator.exe已退出,代码为-1073741515
我尝试使用QT creator调试器调试它。但程序的流程甚至不通过main.cpp
如何调试程序并确定错误在哪里。
更新
在.pro文件中,INCLUDEPATH和LIB如下
win32:INCLUDEPATH += "C:\Program Files\Expat 2.0.1\Source\lib"
win32:INCLUDEPATH += "E:\confuse-2.7\confuse-2.7\src"
win32:INCLUDEPATH += "C:\Projects\LithologyInputGenerator5\XML"
win32:LIBS += -L"C:/Program Files/Expat 2.0.1/Bin" \
-L"C:/Program Files/GnuWin32/lib/" \
-L"E:/confuse-2.7/confuse-2.7/windows/msvs.net/libConfuse/Release"
LIBS += -lexpat \
-lcrypto \
-lssl\
-lconfuse
unix:LIBS += libgsoap++.a \
-lgsoap
win32:LIBS += -lwsock32
更新
我已经使用了上面提到的依赖walker来帮助我找到缺少的依赖项。我现在已经修复了除MPR.DLL之外的所有依赖项(警告:由于延迟加载相关模块中缺少导出功能,至少有一个模块具有未解析的导入。)。它没有丢失,所以我把它遗漏了。
我也使用了配置文件。我现在已经将conf文件复制到WIN32编译器的调试目录。我不记得我是否使用了多个配置文件
程序仍会自动退出,代码为-1073741515
。我尝试使用GUI调试器调试程序。但是节目甚至没有突破主力。
有没有人可以帮我摆脱这个?
答案 0 :(得分:22)
-1073741515与0xC0000135相同,我认为通常是因为缺少依赖关系。我建议检查你的应用所依赖的所有DLL是否都在正确的位置。
您可以使用Dependency Walker。
答案 1 :(得分:1)
我遇到了同样的问题,通过更改项目设置修复了项目 - >工具链 - > MinGW(x86 32位)