failedQI MDA
Note
この記事は .NET Framework に固有のものです。 .NET 6 以降のバージョンを含む、.NET の新しい実装には適用されません。
failedQI
マネージド デバッグ アシスタント (MDA: Managed Debugging Asssitant) は、ランタイムがランタイム呼び出し可能ラッパー (RCW: Runtime Callable Wrapper) の代わりに COM インターフェイス ポインター上の QueryInterface
を呼び出し、その QueryInterface
呼び出しに失敗するとアクティブ化されます。
現象
RCW でのキャストに失敗します。または、RCW からの COM 呼び出しが予期せず失敗します。
原因
正しくないコンテキストから呼び出しが実行されました。
呼び出しが正しくないコンテキストで試行されたため、登録されたプロキシが
QueryInterface
呼び出しに失敗しています。OLE 所有のプロキシがエラー HRESULT を返しました。
解決方法
COM 規則についての MSDN ドキュメントを参照してください。
ランタイムへの影響
QueryInterface
呼び出しに失敗すると、コンテキストが切り替えられ、エラー時に正しくないコンテキストであったことを確認するために、QueryInterface
呼び出しが再試行されます。
出力
インターフェイスのマネージド名、インターフェイスの GUID、およびエラー HRESULT です。
構成
<mdaConfig>
<assistants>
<failedQI/>
</assistants>
</mdaConfig>
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET