【发布时间】:2023-03-23 17:35:01
【问题描述】:
我对一个问题感到非常痛苦,而Excel.Application() 无论如何都不想被释放。即使在一个新类被实例化并立即释放后,它仍然会出现在进程列表中。
if (_ExcelApp == null)
_ExcelApp = new Microsoft.Office.Interop.Excel.Application();
Dispose();
public void Dispose()
{
if (_ExcelApp != null)
{
try
{
_ExcelApp.Quit();
Marshal.FinalReleaseComObject(_ExcelApp);
}
catch (Exception) { }
_ExcelApp = null;
}
}
请帮忙!
【问题讨论】:
-
查看question
-
最好的处理方法是使用 using() 语句,一旦对象完成,它会自动处理它们
-
好的,所以我已经设法设置
_ExcelApp并立即处理它。但是,如果我执行_ExcelApp.Workbooks.Add()(注意没有参数)然后尝试公开_ExcelApp,它会继续保留应用程序。
标签: c# com com-interop excel-interop