私のディレクトリ構造は次のようになります。
-- 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
forに追加しようとし..
ましたが、 MSDNによると、PrivateBinPath
AppDomain
プライベート アセンブリは、アプリケーションと同じディレクトリ構造に配置されます。PrivateBinPath に指定されたディレクトリが ApplicationBase の下にない場合、それらは無視されます。
は のPrivateBinPath
内部ではApplicationBase
なく、1 つ上のディレクトリにあるため、内部になく、ApplicationBase
無視されています。したがってAssemblyResolveException
、DLL を new にロードしようとすると、エラーが発生しますAppDomain
。
をフォルダに設定して として追加しようとしましApplicationBase
たがHost Program Base
、これによりドメインがまったく解決できなくなります。HostedLibs
PrivateBinPath
HostedLib.dll
だから - >を使用して外部のライブラリを解決するにはどうすればよいApplicationBase
AppDomainSetup
ですか?