我正在撰写ISAPI扩展程序。主DLL依赖于其他几个DLL。我把所有这些都放在同一条路上并且有效。问题是:为什么?
AFAIK Windows应查找.exe文件夹中的库(类似于C:\ Windows \ SysWOW64 \ inetsrv for w3wp.exe)和当前路径(相同),但绝对不在目录中ISAPI扩展DLL本身放置的位置。 因此,我不理解为什么某些东西几乎就像它不起作用一样困扰我:) IIS有什么作用?修改PATH,调用SetDllDirectory()或其他什么?
答案 0 :(得分:1)
这可能取决于IIS如何调用LoadLibrary(Ex)来加载ISAPI DLL。
他们可能正在使用LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR标志或类似标志调用LoadLibraryEx。