2013-07-10 85 views
1

稍微背景: 我正在創建基於共享庫的QT應用程序。我必須分發相同的東西。我有很多dll可以共享,並且正在使用工具依賴walker。我完成了我的QT應用程序的分析,Dependency walker正確識別了所有有色庫。現在從依賴沃克創建庫檔案?

我的問題: 由於Dependency Walker中知道所有的DLL的路徑,沒有任何選項,通過詢問的Dependency Walker將所有的dll複製到文件夾或因此發財了。我在谷歌做了一些研究,但沒有找到任何。

請問任何人請指導我相同或有任何其他工具做同樣的?

+0

你能告訴我依賴步行者的位置嗎? – johnbakers

+0

您可以從http://www.dependencywalker.com/下載它。我希望這是你的問題 –

回答

0

這裏是我關於這個問題的想法和隨筆:

我沒有聽說過一個的過,但依賴學步車確實列出的應用程序訪問的一切,以及大量他們不需要被部署。

很可能沒有那麼多的依賴關係。大多數窗口api庫不應該被複制。

您可能需要安裝其中一個vscred軟件包,例如,如果您使用MSVS 2010將其構建爲32位二進制文​​件,則可能需要在客戶端計算機上運行MSVS C++ Redistributables 2010 x86安裝程序。

但是現在,當你搞清楚如何獲得所有這些,你必須在你的路徑中的新的客戶端機器上訪問這裏有一些事情要記住的事情:

知道Windows搜索順序如何幫助。

http://msdn.microsoft.com/en-us/library/windows/desktop/ms682586(v=vs.85).aspx#search_order_for_desktop_applications

而且知道的Qt如何找到自己的圖書館和插件的幫助。

http://qt-project.org/doc/qt-4.8/deployment-windows.html

除此之外,你將需要作出自己的文件夾結構,並複製相關性。

NSIS安裝程序。此外還有其他安裝系統,用於部署您的應用程序。您還可以使用7zip製作自解壓縮zip,併爲其提供轉儲其內容的位置。

希望有所幫助。

0

對於QT應用程序,您可以使用QT Deploy Toolwindeployqt,它隨QT提供並位於QTDIR/bin/windeployqt。它會掃描你的exe文件,並找到一個自包含的部署的QT依賴。