我想防止加载恶意DLL,这可能是通过http://msdn.microsoft.com/en-us/library/ff919712(VS.85).aspx中描述的访问当前工作目录来实现的

在我们的C++应用程序中实现的解决方案是对SetDllDirectory(“”)进行WinAPI调用,这将有效地从Windows DLL加载搜索路径中删除当前的工作目录。但是,似乎此解决方案不适用于我们的Delphi应用程序,因为SetDllDirectory()函数不存在。

Delphi中是否有等效的调用,它与SetDllDirectory(“”)的作用相同?谢谢!

最佳答案

这应该可以解决问题:

function SetDllDirectory(lpPathName:PWideChar): Bool; stdcall; external 'kernel32.dll' name 'SetDllDirectoryW';

10-06 02:22