Code
public void deleteTempExcel()
{
try
{
Kill(MyExcel);
}
catch(Exception e) {
log.Error("关闭Excel进程异常"+e.Message);
}
}
[DllImport("User32.dll", CharSet = CharSet.Auto)]
public static extern int GetWindowThreadProcessId(IntPtr hwnd, out int ID);
public static void Kill(Application excel)
{
IntPtr t = new IntPtr(excel.Hwnd); //得到这个句柄,具体作用是得到这块内存入口
int k = 0;
GetWindowThreadProcessId(t, out k); //得到本进程唯一标志k
System.Diagnostics.Process p = System.Diagnostics.Process.GetProcessById(k); //得到对进程k的引用
p.Kill(); //关闭进程k
}
求助达人,最近写了一个导出Excel的方法,在导出之后需要把Excel进程关掉,我的代码如下,在编译器中没任何问题,进程能关闭,但是发布后,每次导出后都会产生一个新的 Excel进程不知是不是我的代码有问题,求教达人,望赐教。
代码: