在C#中使用Microsoft.Office.Interop.Execl 导出excel 表格时,将以下两个属性亩后,在导完后, Excel.exe 进程无法关闭。
// excel app 是否可见
app.Visible = false; // app 为Microsoft.Office.Interop.Excel.Application 的实例对象
app.DisplayAlerts = false;
在网上看了很多的解决方案,有的过于复杂,最后自己整理了一个比较简便实用的,就是把进程 Excel.exe 关闭关闭掉,具体代码如下 :
/// <summary> /// 退出excel /// </summary> private void KillExcel() { if (book != null) book = null; // WorkBook 的实例欢畅 if (app != null) app.Quit(); // Microsoft.Office.Interop.Excel 的实例对象 GC.Collect(); // 回收资源 System.Diagnostics.Process[] excelProcess = System.Diagnostics.Process.GetProcessesByName("EXCEL"); foreach (var item in excelProcess) { item.Kill(); } }