您可以使用Process.WaitForExit来阻止主程序,直到记事本关闭.
使其阻塞直到文件被保存或关闭会有点棘手.
这里的一个选择是拥有一个ManualResetEvent,并等待它.然后,您可以侦听Process.Exited(在设置Process.EnableRaisingEvents之后),并使用它来调用等待句柄上的Set().这将处理允许您的代码在进程退出时继续.
为了处理正在保存的文件,单独的FileSystemWatcher可以监视文件本身的保存(文件更改).如果文件保存/更改,您可以通过调用Set()继续.