Завершение процесса 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);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д