刚刚研究解决C#中生成Excel后无法终止进程的问题。
网上的2种方法:
1)GC.Collect() ——不一定有效(我这里一定不有效);
2)孟宪会的Kill方法——会关掉所有Excel进程。
研究改进了一下Kill方法,如下:
foreach (Process p in Process.GetProcessesByName("Excel"))
{
if (string.IsNullOrEmpty(p.MainWindowTitle))
{
p.Kill();
}
}
后台运行的Excel进程没有MainWindowTitle,这样前台打开的Excel窗口就不会被关闭了。
但是如果有其他后台Excel进程并发,就不好办了。
哪位仁兄如果实验以上方法,请回复效果。
如有更好方法,还请不吝赐教,多谢^O^