Eine COM-Komponente, die nicht gemarshallt werden kann, wird von einem anderen Apartment/Kontext aus verwendet, als dem, ...

Eine COM-Komponente, die nicht gemarshallt werden kann, wird von einem anderen Apartment/Kontext aus verwendet, als dem, in dem sie erstmals in die CLR eingetreten ist. Da die Komponente nicht gemarshallt werden kann, wird sie direkt vom aktuellen Apartment/Kontext aufgerufen. Dies kann Datenbeschädigung oder -verlust zur Folge haben, wenn die Komponente den gleichzeitigen Zugriff durch mehrere Threads nicht unterstützt. Die wahrscheinlichste Ursache ist eine fehlerhafte IMarshal-Implementierung seitens der COM-Komponente.