Windows タスク マネージャー プロセスを見ると、excel.exe または winword.exe が実行されているのに、システムで開いている Excel または Word ウィンドウが表示されないことがあります。しかし、それはメモリ内で実行されています。タスク マネージャー プロセスにある excel.exe または winword.exe でウィンドウが開いているかどうかを確認するにはどうすればよいですか? これらの excel.exe または winword.exe は、正しく終了していない別のアプリケーションによって作成されます。そのアプリケーションを修正することはできませんが、このプロセスを閉じる必要があります。
システムでウィンドウ/アプリケーションが実際に開いているかどうかを確認する方法はありますか?
次のコードでプロセスを確認して強制終了できますが、Excel にウィンドウ タイトルがない Web サイトから 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());
}
これを行うための提案はありますか?