我有一个Foo.dll通过Bar的导入库(Bar.lib)链接到Bar.dll。 Foo.dll也会延迟加载Bar.dll,所以它只在第一次调用时加载。现在,如果Foo.dll调用Bar.dll导出的函数以便加载Bar.dll,可以在从进程中卸载Foo.dll之前卸载Bar.dll吗?前提是应用程序进程中没有其他DLL依赖于Bar.dll。
答案 0 :(得分:1)
是的,您必须指定/DELAY:UNLOAD
链接器选项并调用FUnloadDelayLoadedDLL
函数。
有关详细信息,请参阅Unloading a delay-loaded DLL。