我的目录结构如下所示:
-- Host Program Base
|- HostProgram.exe
|- SharedLIB.dll
|-- LoadedLibs
|- HostedLib.dll
HostProgram.exe
正在尝试加载HostedLib.dll
,这取决于SharedLib.dll
.
因此,我SharedLib.dll
正在创建以加载它,但它需要能够找到.ApplicationBase
AppDomain
/Host Program Base/HostedLibs/
SharedLib.dll
我试图添加..
到PrivateBinPath
forAppDomain
但根据MSDN,
私有程序集部署在与应用程序相同的目录结构中。如果为 PrivateBinPath 指定的目录不在 ApplicationBase 下,它们将被忽略。
由于PrivateBinPath
不在 内部ApplicationBase
,而是在一个目录中,因此它不在内部ApplicationBase
并且被忽略。因此,AssemblyResolveException
当我尝试将 DLL 加载到新的AppDomain
.
我还尝试将 设置ApplicationBase
为Host Program Base
文件夹并添加HostedLibs
为PrivateBinPath
,但这会导致域根本无法解析HostedLib.dll
。
那么->如何ApplicationBase
使用AppDomainSetup
?