我有一个 Foo.dll,它通过 Bar 的导入库 (Bar.lib) 链接到 Bar.dll。 Foo.dll 还延迟加载 Bar.dll,因此它仅在首次调用时加载。现在,如果 Foo.dll 调用由 Bar.dll 导出的函数,所以 Bar.dll 被加载,那么 Bar.dll 是否可以在 Foo.dll 从进程中卸载之前卸载?前提是app进程中没有其他DLL依赖Bar.dll。
最佳答案
是的,您必须指定 /DELAY:UNLOAD
链接器选项并调用 FUnloadDelayLoadedDLL
功能。
参见 Unloading a delay-loaded DLL获取更多信息。
关于c++ - 可以在卸载主机 DLL 之前卸载通过导入库链接的 DLL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30387445/