2012-06-29 58 views
0

我写了一个输出到Excel文件的winform应用程序。然而,我之后未能妥善清理,因为我总是以太多的Excel进程运行。这里是创建和销毁代码:C#Excel COM Interop:产生太多进程

Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application(); 
Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); 
Worksheet ws = (Worksheet)wb.Worksheets[1]; 
... 
wb.Close(); 
xlApp.Quit(); 

有人能告诉我我失踪了什么吗?

问候。

+0

有你看看[这里](http://stackoverflow.com/questions/5513319/c-sharp-why-are-excel-processes-未结束的)? – Ross

+0

此外:http://stackoverflow.com/questions/158706/how-to-properly-clean-up-excel-interop-objects-in-c-sharp – Dan

+0

谢谢。在我问之前,我确实阅读过这些文章。我似乎没有选择“元帅”。我正在使用Microsoft.Office.Interop.Excel。我是否需要包含另一个库? – Kevin

回答

1

不保存就关闭工作簿。

Workbook.Close Method

.Close(false, false, missing); 
+0

我试过了,经过几次执行后,我仍然有一堆运行的Excel进程。 – Kevin