【发布时间】:2017-09-01 18:25:27
【问题描述】:
我有一个名为 funner.cpp 的 cpp 文件,我使用以下命令将其编译为 dll 文件:(使用 microsofts CL 编译器,顺便说一句)
cl /LD funner.cpp
生成以下文件:funner.lib、funner.dll。
然后我创建了另一个名为 mainer.cpp 的 cpp 文件,它调用了 dll 中的一个函数。
我使用这个命令编译了那个文件:
cl mainer.cpp /link funner.lib
然后,生成一个名为 mainer.exe 的可执行文件。
当我运行 mainer.exe 时,程序按预期运行,并且我没有收到任何错误。 (只要 funner.dll 文件在同一目录下)
但是我想将 funner.dll 移动到其他地方的另一个目录,比如:
c:\my_dlls\
所以我这样做了,然后我将文件夹添加到我的系统 PATH 变量中。
然后我尝试运行可执行文件,但它给我一个错误,说缺少 dll?
但是 Windows 不会在 PATH 变量中的所有目录中搜索 dll 吗?
为什么找不到我的dll?
【问题讨论】:
-
我只是从命令行运行它:\
-
打开一个新的命令行。在您打开一个新路径之前,命令行不会更新其路径。
-
没关系,这确实有效。谢谢。随意将其作为答案:)