C#释放EXCEL进程的问题

做了个把excel中的表转换成SQL INSERT语句的东西,每执行一次,windows任务管理器就多一个EXCEL.EXE,请问该如何释放这个进程。
public int CloseThread()
{
_excelApp.Quit();
return 0;
}
我现在是这么弄的

第1个回答  2011-04-11
[DllImport("user32.dll", SetLastError = true)]
static extern int GetWindowThreadProcessId(IntPtr hWnd, out int lpdwProcessId);
public void KillSpecialExcel()
{
try
{
if (xlApp != null)
{
int lpdwProcessId;
GetWindowThreadProcessId(new IntPtr(xlApp.Hwnd), out lpdwProcessId);

System.Diagnostics.Process.GetProcessById(lpdwProcessId).Kill();
}
}
catch (Exception ex)
{
Console.WriteLine("Delete Excel Process Error:" + ex.Message);
}
}
程序结束时,调用KillSpecialExcel这个方法就可关闭多余的Excel进程
第2个回答  2011-04-11
Thread是线程
using(Thread thread=new Thread(...))
{

}
用这个语句,每次执行到“}”,线程的实例就会自动释放了本回答被提问者采纳
相似回答