引数で実行できるかどうかに関係なく、C# アプリケーションがあります。例えば
- C:\MyApplication.exe
- C:\MyApplication.exe -記録
これらのインスタンスは両方とも同時に実行できます。別のアプリケーション内で、パラメーターで開始されたインスタンスが実行されているかどうかを知る必要があり、実行されている場合はそれらを強制終了したいと考えています。
私はそのようなコードでそれを取得しようとしました:
Process.GetProcesses().Where(x =>
x.ProcessName.StartsWith("MyApplication")
&& (x.StartInfo.Arguments == "-record"));
ただし、プロセスが引数で開始されたときに手動で設定しても、 StartInfo.Arguments は空です。引数で開始されたプロセスを見つけるにはどうすればよいですか?