Как правильно очистить объекты взаимодействия Excel?
Я использую взаимодействие Excel в C# (ApplicationClass
) и разместили следующий код в моем предложении finally:
while (System.Runtime.InteropServices.Marshal.ReleaseComObject(excelSheet) != 0) { }
excelSheet = null;
GC.Collect();
GC.WaitForPendingFinalizers();
хотя этот вид работ,Excel.exe
процесс все еще находится в фоновом режиме, даже после закрытия Excel. Он освобождается только после того, как мое приложение будет закрыто вручную.
что я делаю неправильно, или есть альтернатива, чтобы убедиться, что объекты взаимодействия правильно утилизируются?