COM-Interop Problem
-
Ich habe eine ganze einfache C#-(Windows-)Anwendung. Als Member beinhaltet die Anwendung zwei COM-Member. Mit diesen Variablen kann ich ganz normal arbeiten, alles funktioniert wie erwartet. Mein Problem liegt beim Beenden des Programmes.
Beende ich das Programm über den vorgesehenen Menupunkt, rufe ich im zugehörigen Event-Handler Close() auf und alles ist bestens. Schließe ich das Programm stattdessen über Systemmenu bzw. Alt-F4 ensteht ein COM-Leak.
kennt jemand die Sitaution und weiss wo das Problem liegen könnte.
-
Ev. fehlt noch ein Marshal.ReleaseComObject(..)?
http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal_members.aspx
-
Habe ich gemacht, sogar die "verschärfte" Form mit while (ReleaseComObject() > 0)..., geholfen hats leider nichts.
-
fang doch einfach das Closing event des fensters ab und rufe dort einfach das Close() des COM auf ?!