failedQI-MDA
Hinweis
Dieser Artikel gilt für das .NET Framework. Sie gilt nicht für neuere Implementierungen von .NET, einschließlich .NET 6 und höherer Versionen.
Der failedQI
-MDA (Managed Debugging Assistant, Assistent für verwaltetes Debuggen) wird aktiviert, wenn die CLR stellvertretend für einen RCW (Runtime Callable Wrapper) QueryInterface
für einen COM-Schnittstellenzeiger aufruft und der Aufruf von QueryInterface
fehlschlägt.
Symptome
Eine Umwandlung für einen RCW schlägt fehl, oder ein Aufruf von COM von einem RCW aus schlägt unerwartet fehl.
Ursache
Der Aufruf erfolgt im falschen Kontext.
Der registrierte Proxy kann den Aufruf von
QueryInterface
nicht ausführen, weil der Aufruf im falschen Kontext erfolgte.Ein OLE zugehöriger Proxy hat einen falschen Wert für HRESULT zurückgegeben.
Lösung
Informationen hierzu finden Sie in der MSDN-Dokumentation zu COM-Regeln.
Auswirkungen auf die Laufzeit
Wenn ein Aufruf von QueryInterface
fehlschlägt, erfolgt ein Kontextwechsel, und der Aufruf von QueryInterface
wird erneut ausgeführt, um zu ermitteln, ob ein falscher Kontext für das Fehlschlagen verantwortlich war.
Ausgabe
Der verwaltete Name der Schnittstelle, die GUID der Schnittstelle und das HRESULT des Fehlers.
Konfiguration
<mdaConfig>
<assistants>
<failedQI/>
</assistants>
</mdaConfig>