2013-07-10 87 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依赖。