C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 20 を表示中)
■8700 / )  Re[2]: Excelのプロセスが一つだけ残ってしまいます
□投稿者/ 大阪人 (3回)-(2007/10/07(Sun) 14:14:37)
ご返信ありがとうございます。

> ちょっと誤解をしているように見受けられます。
> まずはひととまりこちらをご覧ください。
> http://jeanne.wankuma.com/tips/programing/releasecom.html
>

ご指定頂いたサイトは今回、Comオブジェクトを使用するにあたり大いに参考にさせて頂きました。

そのうえで以下の点を気を付けるようにしてみたつもりです。

@Marshal.ReleaseComObjectで全てのCOMオブジェクトを解放する。
A変数を使いまわさない(excelRangeは複数個所で使っていますが、Worksheet.Cellsを参照しているので使いまわしにはあたりませんよね?)。
B型のCastは行わない。
CApplicationをquitする前にはWorkbookをCloseする。

> 一言申し上げますと GC は今回の事情とは直接関係しません。
> 参照カウントがすべてです。

やはりそうですか。
別のサイトでじゃんぬねっとさんが「GC.Collectはコストが高いので使用しない方が良い」と発言してらっしゃるのを拝見しましたので、私のソースが何か間違っているのだろうと思っておりました。

申し訳ありませんが、私が誤解している点をご指摘頂けないでしょうか。


返信 編集キー/


管理者用

- Child Tree -