C#导出Excel后关闭进程EXCEL.EXE


在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();
            }
        }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM