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