Завершение процесса Excel после обработки файла - C#
Формулировка задачи:
Доброго времени суток,
Подскажите пожалуйста, как завершить процесс Excel после использования? Вот что я делаю:
Проблема в том, что эксель остается висеть в процессах после отработки этого кода, и при каждом запуске приложения - запускается новый процесс и остается висеть. Как правильно убивать его?
Excel.Application myExcelApp;
Excel.Workbooks myExcelWorkbooks;
Excel.Workbook myExcelWorkbook;
myExcelApp = new Excel.Application();
myExcelWorkbooks = myExcelApp.Workbooks;
object misValue = System.Reflection.Missing.Value;
myExcelWorkbook = myExcelWorkbooks.Open(path, misValue, misValue,
misValue, misValue, misValue, misValue, misValue, misValue, misValue,
misValue, misValue, misValue, misValue, misValue);
Excel.Worksheet currentExcelWorksheet = (Excel.Worksheet)myExcelWorkbook.Sheets[1];
//Here is some actions........
myExcelWorkbook.Close();
myExcelWorkbooks.Close();
myExcelApp = null;Решение задачи: «Завершение процесса Excel после обработки файла»
textual
Листинг программы
GC.Collect();
GC.WaitForPendingFinalizers();
if (range != null) Marshal.FinalReleaseComObject(range);
if (sheet != null) Marshal.FinalReleaseComObject(sheet);
if (book != null)
{
book.Close(false, Type.Missing, Type.Missing);
Marshal.FinalReleaseComObject(book);
}
app.Quit();
Marshal.FinalReleaseComObject(app);