這個Qt應用程序被VS 2010編譯爲最終用戶,但正在執行的應用程序沒有找到Qt的dll。在該文件夾中,有QtGui4.dll和QtCore4.dll如何解決此問題?Qt應用程序找不到QtGui4.dll和QtCore4.dll
1
A
回答
1
歡迎來到Dll地獄!您使用Qt部署
每次你必須要確保
1)對你所編譯的庫相同的版本和相同的編譯器 2)有在系統路徑的其他圖書館沒有衝突 3)如果你編譯調試你必須使用* d.dll版本的庫
請確保例如,如果你的程序是用VC9編譯的話,那麼你的DLL也是用VC9編譯的。
您可以通過一個名爲Dependency Walker的非常有用的程序來了解要鏈接哪些庫。 http://www.dependencywalker.com/
+0
謝謝linello。正如你告訴我的,問題是因爲它不是同一個編譯器。 – 2012-08-20 11:27:23
+0
不客氣。一定要記住使用相同版本的庫和編譯器,否則這類問題非常頻繁。 – linello 2012-08-20 14:08:19
0
這是你的應用程序被編譯爲不同的版本比的DLL。 如果你從VS運行它,它會工作嗎?
相關問題
- 1. 與QNetworkAccessManager QtCore4.dll
- 2. Qt新Gui應用程序在啓動時崩潰,在QtCore4.dll錯誤
- 3. Python程序崩潰,因爲ntdll.dll的和QtGui4.dll
- 4. emgucv,找不到opencv_core220.dll和opencv_imgproc220.dll
- 5. 如何構建不依賴於MSVCx80.dll的QTcore4.dll?
- 6. 「找不到PInvoke DLL」sqlceme35.dll「
- 7. 在QT 5.0.1中找不到libgcc_s_dw2-1.dll
- 8. 執行程序時找不到DLL(C++)
- 9. Winforms崩潰沒有qtcore4.dll勝7 7
- 10. 將openCV .dll文件添加到Netbeans C++ Qt應用程序
- 11. 將QT GUI DLL集成到我的應用程序中
- 12. 參考DLL不能找到運行的應用程序
- 13. 在分佈式應用程序中找不到DLL
- 14. SysWOW64中的dll找不到應用程序
- 15. IIS 7.0/Windows Server 2008 - 在ASP.NET應用程序中找不到DLL
- 16. Qt應用程序依賴於DLL的(它不需要?)
- 17. Qt創建者:此應用程序未能啓動,因爲未找到MSVCP110.dll
- 18. 找不到MSVCP90.dll?
- 19. Warning:找不到dll
- 20. c#dll找不到
- 21. MSVCR90.DLL找不到
- 22. 找不到Microsoft.DiaSymReader.Native.x86.dll
- 23. QtXmld4.dll找不到
- 24. 爲什麼應用程序沒有找到DLL「boost_thread-vc100-mt-1_46_1.dll」?
- 25. 在DLL「SqlServerSpatial110.dll」中找不到SetClrFeatureSwitchMap
- 26. 找不到PInvoke DLL kernel32.dll文件C#
- 27. Windows Form DLL應用程序
- 28. opencv dll錯誤 - 找不到過程KERNEL32.dll中的過程LoadPackagedLibrary
- 29. 應用程序池dll和GAC
- 30. C++ DLL和C#應用程序WPF:System.DllNotFoundException
那麼,實際上,它似乎找到了DLL,而不是它需要的DLL中的特定函數。你可以仔細檢查它是否實際加載了正確的DLL,並且沒有從另一個應用程序中拾取Qt DLL。只要把你的EXE放在Dependency Walker中,看看你的DLL有什麼路徑。 – Bart 2012-08-17 09:13:51
@我覺得你是對的。可能是他把不同的Qt verion的dll。 – 2012-08-17 09:28:00
僅供參考,可以在[此鏈接]找到Dependency Walker(http://www.dependencywalker.com/)。把你的EXE放在那裏,看看它告訴你什麼。您可能必須明確地打開路徑的可視化。 – Bart 2012-08-17 09:29:10