当我们查看 Windows 任务管理器进程时,有时我们会看到 excel.exe 或 winword.exe 正在运行,但系统中没有打开任何 excel 或 word 窗口。但它在内存中运行。如何找出任务管理器进程中的 excel.exe 或 winword.exe 是否有打开的窗口?这些 excel.exe 或 winword.exe 是由未正确关闭的不同应用程序创建的。我无法修复该应用程序,但我需要关闭此进程。
有没有办法找出系统中是否真的打开了一个窗口/应用程序?
我可以使用以下代码检查并终止该过程,但是当从 Excel 中没有窗口标题的网站打开 excel 文件时,它会失败。
Process[] procs;
try {
procs = Process.GetProcessesByName("excel");
foreach (Process curprocess in procs)
{
if (!curprocess.HasExited && string.IsNullOrEmpty(curprocess.MainWindowTitle))
{
curprocess.Kill(); }
}
}
catch (Exception ex) {
WriteLog(ex.ToString());
}
有什么建议吗?