Hallo!
Ich verwende das .NET Framework v2.0.50215 und versuche ein eine eigene
AppDomain ein DLL-Assembly zu laden.
Das ganze sieht so aus, dass es sich um einen Application Server
handelt, der in mehrere Projekte aufgeteilt ist. Ein Projekt enthält
alle Klassen die auch für die Application die geladen werden soll von
Relevanz ist (abstrakte Application-Klasse etc.).
Mein Problem ist nun, dass beim Laden der Assembly eine
FileNotFoundException geworfen wird, die mir sagt, dass die Assembly
oder eine Referenz nicht gefunden wurde.
Beides liegt jedoch im angegebenen Pfad und sollte vorhanden sein. Dabei
scheint es auch vollkommen egal zu sein, ob die referenzierten
Assemblies im GAC liegen oder im gleichen Verzeichnis der Application.
Folgender Code stellt einen meiner Versuche dar:
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = Path.GetDirectoryName(fullpath);
setup.ShadowCopyFiles = "yes";
setup.ShadowCopyDirectories = this.shadowPath;
Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
Evidence evidence = new Evidence(baseEvidence);
AppDomain newDomain = AppDomain.CreateDomain("TestDomain", evidence, setup);
Assembly assembly = newDomain.Load(this.ReadAssembly(fullpath)); //
FileNotFoundException
Die Variable fullpath stellt hier den kompletten Pfad zur zu ladenden
DLL dar. Die Methode ReadAssembly liest einfach nur die Assembly ein und
gibt ein byte[] zurück. Hier nur anzumerken: Ich habe auch versucht die
Assembly über
newDomain.Load(AssemblyName.GetAssemblyName(fullpath));
zu laden. Mit dem gleichen Erfolg.
Unter dem .NET Framework 1.1 ergeben sich keine Probleme. Die MSDN gibt
mir auch nicht besonderes viele Informationen dazu, da selbst Microsoft
in den Beispielen zum 2.0er Framework mit den obsoleten Methoden arbeitet.
Hat hier irgendjemand eine Idee woran das liegen könnte?
Danke,
Norbert
_______________________________________________
Coffeehouse Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/coffeehouse