0

我正在使用我的 Delphi 项目中的 LoadLibrary 加载一个 DLL,如下所示:

DLLHandle := LoadLibrary('my.dll');
if (DLLHandle = 0) then ShowMessage(SysErrorMessage(GetLastError));

DLL 所在的目录包含在 Windows PATH 环境变量中。当我在 Delphi 中执行这个项目时,DLL 不会加载。但是,当直接从 Windows 执行相同的代码时,DLL 会完美加载。

我在这里想念什么?我试图通过将目录添加到工具->选项、环境选项->Delphi选项->库-Win32->库路径来明确告诉Delphi查看DLL的目录。(感觉就像一个完全的PEBKAC。我预计在不久的将来会为自己感到尴尬:) ...)

提前致谢!

4

1 回答 1

2

大多数时候,当我遇到类似的问题(从 Windows 工作,而不是从调试器工作)时,这是因为“用户覆盖”

(“项目->选项”菜单,“调试器->环境块”)

您可能对“Windows 路径”进行了用户覆盖,这就是从调试器运行时它不起作用的原因。

于 2011-01-10T18:07:39.757 回答