次の方法で共有


/clr で構築された COM オブジェクト使用時における CLR シャットダウンの例外の回避

共通言語ランタイム (CLR) がシャットダウン モードになると、ネイティブ関数は CLR サービスへのアクセスが制限されます。 /clr でコンパイルされた COM オブジェクトに対して Release を呼び出そうとすると、CLR はネイティブ コードに遷移し、次に、(マネージ コードに定義されている) IUnknown::Release 呼び出しを提供するためにマネージ コードに戻ります。 CLR はシャットダウン モードであるため、マネージ コードへのコールバックが回避されます。

これを解決するには、Release のメソッドから呼び出されたデストラクターにのみネイティブ コードが含まれていることを確認します。

参照

概念

混在 (ネイティブおよびマネージ) アセンブリ