4

我正在使用 Excel 互操作。在我得到的方法开始时,我正在分配应用程序的一个新实例,最后我试图释放它,但是当我查看 TaskManager 时,我仍然可以看到 Excel 打开。

这是代码:

班级成员:private Excel.Application _app;

用法:

 public void MethodApp()
{
  _app = new Excel.Application();
  ....
  ....
  FreeApplicationResources();
}

private void FreeApplicationResources()
{
  _app.Quit();
  Marshal.ReleaseComObject(_app);
}

MethodApp 可以运行多次,它打开的实例数量与调用次数相同。Excel为什么不关闭?

4

1 回答 1

1

尝试按以下顺序发布任何使用的工作表和工作簿:

Marshal.ReleaseComObject(_worksheet);
Marshal.ReleaseComObject(_workbook);
Marshal.ReleaseComObject(_app);
于 2013-10-30T15:22:56.427 回答