Vermeiden von Ausnahmen beim Herunterfahren der CLR, wenn mit /clr erstellte COM-Objekte verwendet werden
Aktualisiert: November 2007
Sobald die Common Language Runtime (CLR) in den Modus für das Herunterfahren wechselt, wird der Zugriff systemeigener Funktionen auf CLR-Dienste eingeschränkt. Wenn versucht wird, für ein COM-Objekt, das mit /clr kompiliert wurde, Release aufzurufen, geht die CLR in systemeigenen Code über und wechselt anschließend zurück in verwalteten Code, um den IUnknown::Release-Aufruf zu verarbeiten (der in verwaltetem Code definiert ist). Die CLR verhindert den Rückruf in verwalteten Code, wenn sie sich im Modus für das Herunterfahren befindet.
Um dieses Problem zu lösen, sollten Sie sicherstellen, dass von Release-Methoden aufgerufene Destruktoren nur systemeigenen Code enthalten.