0

プロセス(.exe)が発生したときに通知を受け取る方法。メモ帳はC#で閉じていますか?

4

1 に答える 1

9

最も簡単な方法は、System.Diagnostics.Process監視するメモ帳プロセスのを作成することです。

  Process p = Process.GetProcessesByName("notepad.exe").First();
  p.Exited += (sender, args) => Debug.WriteLine("Process has exited!");

理論的には、(を使用してProcess.GetProcesses())実行中のすべてのプロセスに対してこれを実行できますが、これにより、監視を開始したときに実行中のプロセスだけで、将来のプロセスについて通知を受けることができなくなります。

閉じられているプロセス/ウィンドウに関する情報を提供できるより低レベルのソリューションは、ここで提供される.NETラッパーを備えたCBTフックを使用することですが、Win32ウィンドウを閉じるための情報を提供するため、これにはさらに多くの手動管理が必要です。プロセスだけではありません。

于 2012-04-05T05:27:26.460 に答える