1

当我们查看 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());
     }

有什么建议吗?

4

1 回答 1

0

尝试让它自行退出。我认为您应该可以使用以下方法。

curprocess.Application.Quit();}

祝你好运,LC

于 2013-06-20T23:50:40.783 回答