どのようにしてappdomainを作成し、アセンブリを追加してから、そのアプリケーションドメインを破棄できますか?これは、私が試したものです:私も試してみましたカスタムAppDomainを作成してアセンブリを追加する
static void Main(string[] args)
{
string pathToExe = @"A:\Users\Tono\Desktop\ConsoleApplication1.exe";
AppDomain myDomain = AppDomain.CreateDomain("MyDomain");
Assembly a = Assembly.Load(System.IO.File.ReadAllBytes(pathToExe));
myDomain.Load(a.FullName); // Crashes here!
}
:
myDomain.Load(File.ReadAllBytes(pathToExe));
は、どのように私はのAppDomainにアセンブリを追加することができます。 、ConsoleApplication1、バージョン= 1.0.0.0」ファイルまたはアセンブリをロードできませんでした
:私は私が得る例外はある
を、それを実行し、その後のAppDomainを破棄反射によって方法を見つけることができません一度 カルチャ=ニュートラル、PublicKeyToken =ヌル 'またはその依存関係の1つ。 システムは、指定されたファイルを見つけることができません。
:
そして、そのようにそれを使用します。ここでは単純なものです他のドメインを使用して、必要なアセンブリをロードします(依存関係をあらかじめロードするかアセンブリの検索パスを正しく設定する必要があるかもしれないことを忘れないでください)。 –
"またはその依存関係の1つ"が通常の問題です。それが何であるかわからない場合は、Fuslogvw.exeを使用してください。 AppDomainSetupを使用して、正しいプライベートパスを設定します。 –