2

我有一个名为 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?

4

1 回答 1

2

PATH在您关闭并重新打开它之前,命令行不会收到更新。

打开一个新的命令行并从那里调用可执行文件。

于 2017-09-01T18:32:11.293 回答