何本かOutlookのアドインを作ってきましたが、ReleaseComObjectは不要と思っています。
理屈としては、VSTOアドインは「プライマリ相互運用機能アセンブリ/PIA」なるラッパー経由で
COMオブジェクトをマネージドコード上で取り扱うようになっているから、らしい...
http://blogs.wankuma.com/fnya/archive/2008/01/14/117356.aspx
私の実装では、
var ins = base.Context as Microsoft.Office.Interop.Outlook.Inspector; //VSTOプロジェクトに追加した「リボン(ビジュアルなデザイナ)」のクラス内メソッドに記述
などで取得したインスペクターウインドウのインスタンス ins に対して必要な処理を行い、
最後は特に開放処理などしていない(メソッドの終了に伴い破棄)ですが、
特になにか問題が起きたことはないです。(Microsoft.Office.InteropがPIAがある名前空間ですね)
でもほんとにVSTOって情報が全然無くて困ります。
|