C#:EXCEL退出会,进程/线程残留问题

 应该是微软的一个BUG吧,操作完EXCEL并退出后,仍然会有一个EXCEL的进程留存。

解决方法:

用API,将进程杀掉。

using System.Runtime.InteropServices;




[DllImport("User32.dll", CharSet = CharSet.Auto)]
public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID); //API获取进程ID
public static void KillProcess(IntPtr HWND)
{
    int id = 0;
    GetWindowThreadProcessId(HWND, out id);
    System.Diagnostics.Process process = System.Diagnostics.Process.GetProcessById(id);
    process.Kill();
}



//调用方式
Excel.Application xlsApp = new Excel.Application();
xlsApp.Quit();
KillProcess(new IntPtr(xlsApp.Hwnd)); 

你可能感兴趣的:(C#,C#,EXCEL,残留,进程,线程)