実行中のプロセスの絶対パスを取得します
C# プログラムで外部アプリケーションの設定を変更する場合、多くの場合、変更を適用するためにアプリケーションを再起動する必要があります。ただし、パスが手動で指定されていない場合、実行中のプロセスの完全なパスを決定するのは困難になる可能性があります。この問題は、通常、プロセスの作成後にシステムが EXE ファイルの場所を認識しないために発生します。
解決策: Process.MainModule.FileName プロパティを使用します
この問題を解決するために、System.Diagnostics 名前空間は、Process.MainModule.FileName プロパティという解決策を提供します。このプロパティは、実行中のプロセスに関連付けられた EXE ファイルへの絶対パスへのアクセスを提供します。
コード例:
<code class="language-csharp">using System.Diagnostics; var process = Process.GetCurrentProcess(); // 或使用适当的方法获取目标进程 string fullPath = process.MainModule.FileName; // fullPath现在包含EXE文件的完整路径。</code>
注:
コードが 32 ビット アプリケーションで実行される場合、64 ビット アプリケーションのパスを取得できない可能性があることに注意してください。この場合、アプリケーションを 64 ビット アプリケーションとしてコンパイルして実行する必要があります。
以上がC# で実行中のプロセスの絶対パスを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。