2010-07-29 89 views
10

我在Linux上編寫了一個QTcreator中的程序,當我嘗試將它移植到Windows時。 程序編譯沒有任何錯誤。 但是當我運行該程序就自動退出 開始C:\項目\ LIG \調試\ LIGenerator.exe ...我使用代碼退出的QT應用程序-1073741515

C:\項目\ LIG \調試\ LIGenerator.exe與代碼退出-1073741515

我試圖用QT創建器調試器進行調試。但是程序的流程甚至不通過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 

更新

我用的Dependency Walker提到以下WH我幫助我找到缺失的依賴關係。我現在修復了除MPR.DLL之外的所有依賴項(警告:由於延遲加載相關模塊中缺少導出功能,至少有一個模塊導入未解析導入)。 IT不會丟失,所以我把它丟掉了。 我還使用了一個配置文件。我現在已經將conf文件複製到WIN32編譯器的調試目錄中。我不記得我是否使用了多個conf文件
仍然程序自動退出,代碼爲-1073741515 。我試圖使用GUI調試器來調試程序。但是,程序甚至在主要方面也沒有突破。

任何人都可以幫我擺脫這個困境嗎?

回答

22

-1073741515與0xC0000135相同,我認爲這通常是因爲依賴項丟失。我建議檢查你的應用程序依賴的所有DLL在正確的位置。

您可以使用Dependency Walker

+0

謝謝!這也適用於我。 – chwi 2014-01-13 13:26:50

+0

當我看到這個退出代碼時,它是在後臺運行的程序提供的唯一提示,無法訪問Windows GUI(因爲它是由另一個程序運行的)。我試圖直接從命令提示符運行程序,它彈出一個錯誤窗口,準確解釋哪個DLL丟失。 – nmgeek 2016-10-14 14:22:05

1

我有同樣的問題,通過更改項目設置項目固定 - >工具鏈 - > MinGW的(x86 32位系統)

相關問題