如何指定我希望我的 LIB 链接到的 DLL 文件? - Visual Studio 2019

How to specify the DLL file that I want my LIB to be linked to? - Visual Studio 2019

我有同一个 DLL 文件的不同版本,我想确保它 link 为最新版本。 但是在 LIB 文件中只指定了“FileName.dll”,我猜它会在各种文件夹中检查直到找到它。

如何确保它使用我想要的那个?

问题是我想将 OpenCL 库与 OpenGL 交互一起使用。 但由于 AMD-APP 已从官方网站上删除,所以我下载了最新版本,它可能已经过时了。由于我在 clinfo 中的设备获得 1.2 的驱动程序版本(我需要 >= 2.0)。

所以我安装了 Radeon Software Adrenalin thingy for graphics 它给了我一个新版本的 DLL 文件 (amd_opencl32.dll) clinfo 程序 returns 2.0 的驱动程序版本.

旧版AMD-APP的OpenCL.lib被link改成了OpenCL.dll,有什么办法可以link到新版本?我是在尝试一些不可能的事情还是非常糟糕的事情?

LIB 仅按名称引用 DLL,不按版本、路径或任何其他唯一标识符。

当您的进程启动时,它会通过特定路径搜索算法解决其对 "FileName.dll" 的依赖性。几乎总是首先在与 EXE 本身相同的目录中查找 DLL,然后再回退到其他目录。您需要知道的一切都记录在此处:

Dynamic-Link Library Search Order