启动使用附加库的可执行程序

Posted

技术标签:

【中文标题】启动使用附加库的可执行程序【英文标题】:Starting an executable program that uses additional libs 【发布时间】:2013-05-30 14:16:25 【问题描述】:

我使用 Microsoft Visual Studio 2010 制作了一个程序。它使用了额外的库 (Allegro),它可以从 MSVC 完美运行,但我无法从它的目录运行它。 (...\"project name"\Debug\"project name".exe) 它写道它找不到某种.dll文件。

这不好,因为我想让它对每个人都有效!怎样做才能让它发挥作用?

我知道我必须把必要的 .dll 文件放在哪里,但我不知道放在哪里?

【问题讨论】:

要么将DLL文件放在%PATH%中,要么将DLL文件的路径添加到%PATH%中,或者将DLL文件与可执行文件放在一起。 只有一个必要的 dll,所以很容易。但我不知道我必须放到那个地方。还是谢谢你! 【参考方案1】:

启动可执行文件时,Windows 会搜索当前目录、PATH,然后搜索其他一些位置。具体描述可以看here

您需要确保 PATH 包含您需要的库,或者将其放在同一目录中(或其他一些自动搜索的目录中,但这通常不是一个好的解决方案)。

【讨论】:

您还可以编写一个批处理文件,将可执行文件包装起来,并首先为应用程序设置正确的PATH 只有一个必要的 dll。还是谢谢你! PATH 是一个环境变量。在命令提示符下,你可以用echo %PATH% 看到它——你可以在控制面板中设置它,但我的 Windows 机器目前没有启动并运行,所以我不能给你精确的步骤。这是我在谷歌上找到的一个例子,你需要修改一些细节,但总体过程是一样的:code.google.com/p/tryton/wiki/AddingPythonToWindowsPath 我明白了。没问题,我能搞定。谢谢!

以上是关于启动使用附加库的可执行程序的主要内容,如果未能解决你的问题,请参考以下文章

从另一个项目的可执行文件启动一个项目的可执行文件

QProcess 附加到从脚本运行的可执行文件

忽略 rpath 条目的可执行文件

程序如何删除自己的可执行文件

发布依赖于 C++ 库的 python 绑定的 python 可执行文件

程序的可执行文件以 Java 映像