起動するアプリケーションのユーザー設定を尊重するためにシェル実行可能ファイルを使用したいのですが、その特定のアプリケーションがいつ閉じられるかを知る必要もあります。
Process editProcess = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = filename;
startInfo.Verb = "edit";
startInfo.UseShellExecute = true;
editProcess.StartInfo = startInfo;
// start the default editor
editProcess.Start();
editProcess.WaitForExit();
WaitForExit は、実際のプロセスが終了したときではなく、シェル プロセスが終了したときに戻るようです。
レジストリを手動で解析し、シェルを実行せずにそのアプリを起動して明示的に起動する正しいアプリケーションを見つけるよりも、起動されたアプリケーションがいつ終了したかを知るより良い方法はありますか?