Ich versuche, eine App-Domäne in VB/VS2015 mit .NET Framework 4, 64-Bit zu erstellen, aber bekomme eine OutOfMemoryException.Erstellen von AppDomain mit .NET Framework 4 gibt OutOfMemoryException
domain = AppDomain.CreateDomain("mydomain")
Es funktioniert gut, wenn ich es in einer Windows Forms-Anwendung zu tun, aber ich versuche es in einer Klassenbibliothek zu tun (um aus einer 3rd-Party-Anwendung aufgerufen werden), und es jedes Mal versagt.
Ich würde gerne wissen, ob es legal ist, eine appdomain unter diesen Umständen zu erstellen (schließlich erstelle ich keine Anwendung), und die Fehlermeldung ist irreführend, oder gibt es etwas anderes, das ich vermisse (Sicherheitsnachweise?).
Microsoft einen Fehler im Rahmen zugeben 4.5, die diesen Fehler gibt (see this), aber ich bin mit Framework 4
ein bisschen mehr Hintergrund zu geben, ich bin mit einem Appdomain dynamisch laden und entladen Eine DLL, die ich erstelle, also kann ich während der Entwicklung entladen, neu kompilieren und neu laden, da die Anwendung von Drittanbietern, die meine DLL aufruft, sehr langsam ist, um hochzufahren und Dokumente zu laden. Ich möchte so nah wie möglich an Edit and Continue kommen!
Sie Erwähnen Sie Process.Net, meinen Sie https://github.com/lolp1/Process.NET? –
Ich versuche zu sehen, warum Sie "ProcessDotNet verwenden" ... sollte dies "mit Process.NET" sein? Selbst dann kann ich "Process.GetCurrentProcess()" nicht verstehen. Fehle ich etwas? –
Ja, du hast Recht. Ich habe die gesamte Bibliothek in einen anderen Namensraum verschoben. Das kann auch der Grund dafür sein, dass Sie Probleme mit 'Process.GetCurrentProcess()' bekommen. Versuchen Sie 'System.Diagnostics.Process.GetCurrentProcess()' – sneusse