/clr で構築された COM オブジェクト使用時における CLR シャットダウンの例外の回避
更新 : 2007 年 11 月
共通言語ランタイム (CLR) がシャットダウン モードになると、ネイティブ関数は CLR サービスへのアクセスが制限されます。/clr でコンパイルされた COM オブジェクトに対して Release を呼び出そうとすると、CLR はネイティブ コードに遷移し、次に、(マネージ コードに定義されている) IUnknown::Release 呼び出しを提供するためにマネージ コードに戻ります。CLR はシャットダウン モードであるため、マネージ コードへのコールバックが回避されます。
これを解決するには、Release のメソッドから呼び出されたデストラクタにのみネイティブ コードが含まれていることを確認します。