c++将dll放置在exe的相对路径中

C++ placing dll in relative path to exe

本文关键字:相对 路径 exe dll c++      更新时间:2023-10-16

我构建了一个小的。exe应用程序。目前我采取编译。exe文件和所有必要的。dll的,并把它们放在一个文件夹。所以它看起来像这样:(working)

appfolder/
    lib1.dll
    lib2.dll
    ...
    app.exe

我想把它整理成以下形式:(不工作)

appfolder/
    libs/
        lib1.dll
        lib2.dll
        ...
    app.exe

然而,我没有找到一种方法来使这个工作。我正在使用VS2010,我试图添加"。libs"到附加包含目录(项目属性>配置> C/c++)。

我也读到LoadLibrary似乎不是解决这个问题的方法…

这可能吗?

也许SetDllDirectory函数会为您工作。

除此之外,您还可以使用LoadLibraryExGetProcAddress进行"惰性"加载。

Linux也有类似的功能