2011-07-01 7 views
2

私はCOM相互運用機能を使って別のWindowsアプリケーションを自動化するコンソールアプリケーションを持っています。アプリケーションを自動化してファイルを開き、スクリーンショットを撮ってから終了します。プロセスが終了している場合は、Marshal.ReleaseComObjectを呼び出す必要がありますか?

私はインスタンス化取得されているCOMオブジェクトの限られた数にMarshall.ReleaseComObjectを呼び出していませんでした場合は任意の悪影響があるだろうかと思いまして?オブジェクトをクリーンアップするためにreleaseメソッドを呼び出す方がきれいですが、この場合は本当に必要ですか?

答えて

2

必要ですか?おそらくそうではありません。しかし、もしあなたがしなければ、私はほとんどいつかはこれが戻ってきてあなたをかむことを保証することができます。アンラップされたCOMオブジェクトを使用しているときは、常にtry ... finallyブロックでラップし、最後にReleaseComObjectを実行します。

関連する問題