Excel, не выгружается
От: Аноним  
Дата: 24.03.09 00:46
Оценка:
Нашел вот такой сниппет для работы с ёкселем:

// Open document.
Application app = new ApplicationClass();
Workbook book = app.Workbooks.Open(path,
    Missing.Value, Missing.Value, Missing.Value,
    Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
    Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value,
    Missing.Value);
Worksheet sheet = (Worksheet)book.Worksheets[1];

... работаем ...

// Save, close and free memory.
book.Save();
book.Close(false, null, null);
app.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(app);

GC.GetTotalMemory(true);


После выполнения этого метода в разных потоках, Excel иногда остается висеть в процессах. По нескольку штук набирается. Подскажите, как грамотно сделать его синглтоном, чтобы подключаться к уже запущенному экземпляру. Один пусть висит, не страшно. Ну, или чтоб гарантированно прибивать все экземпляры.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.