何故あなたは例外が出るの…?

VSTO 2008 を使っての Excel 起動に何故か失敗してゲンナリ

System.Runtime.InteropServices.COMException (0x80010001): CLSID {00024500-0000-0000-C000-000000000046} を含む COM コンポーネントインスタンスを IClassFactory から作成中に、次のエラーが発生しました: 80010001。

Excel::_Application^ NewApplication()
{
    // ↓ここで例外
    return gcnew Excel::Application();
}


マジでこれだけなのに Excelインスタンス生成に失敗するという… 何が悪いんや… ('A`)

  • 創ったインスタンスは毎回終了している
    • excel->Quit();
    • ReleaseComObject(excel);
    • 一応 ガベコレ も走らせた
  • 2回目以降に発生する
  • 短時間で再生成すると起きるっぽい
  • gcnew と Quit() は同じスレッド

再生成時に起きるって事は終了の何かが悪そう…とはいえ、ちゃんと終了はしてると思うんだけどなぁ… ギギギ…