Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Note
Dieser Artikel ist spezifisch für .NET Framework. Sie gilt nicht für neuere Implementierungen von .NET, einschließlich .NET 6 und höherer Versionen.
Der invalidVariant assistent für verwaltete Debugging (Managed Debugging Assistant, MDA) wird aktiviert, wenn während eines Aufrufs von systemeigenem oder nicht verwaltetem Code zu verwaltetem Code eine ungültige VARIANT Struktur gefunden wird.
Symptome
Unerwartetes Verhalten während eines Übergangs zwischen systemeigenem und verwaltetem Code, der die Marshalling eines VARIANT Objekts in ein Objekt umfasst.
Ursache
Systemeigener Code übergibt eine falsch formatierte VARIANT Struktur an verwalteten Code. Die Laufzeit versucht, dies VARIANT an ein Objekt zu marshallen und die MDA zu aktivieren, wenn dies VARIANT ungültig ist. Beispiele für ungültige VARIANTS enthalten eine VARIANT mit VARTYPE VT_EMPTY | VT_BYREF oder ein VARIANT mit VARTYPE VT_VARIANT.
Auflösung
Der systemeigene oder nicht verwaltete Code, der die Übergeben der VARIANT Datei übergibt, muss sicherstellen, dass die VARIANT Korrektform und initialisiert ist.
Effekt auf die Laufzeit
Die MDA hat keine Auswirkungen auf das Verhalten der Laufzeit.
Output
Eine MDA-Meldung, die angibt, dass die Laufzeit einen ungültigen VARIANT Übergeben an verwalteten Code durch ein nicht verwaltetes Modul erkannt hat.
Konfiguration
<mdaConfig>
<assistants>
<invalidVariant />
</assistants>
</mdaConfig>