C#で引数を指定してシェルコマンドを実行しようとしましたが、 "指定されたファイルが見つかりません"というファイルが見つかりました。引数でシェルコマンドを実行する方法は?
I`veは試してみました:パラメータ "同期"
C#で引数を指定してシェルコマンドを実行しようとしましたが、 "指定されたファイルが見つかりません"というファイルが見つかりました。引数でシェルコマンドを実行する方法は?
I`veは試してみました:パラメータ "同期"
あなたは少しあなたのコードを変更する必要があります。
p.StartupInfo.FileName = Path.Combine(Directory.GetCurrentDirectory(), "timesync\\NistClock.exe");
p.StartupInfo.Arguments = "sync";
使用Argumentsプロパティなしで実行されたときに
p.StartInfo.FileName = Directory.GetCurrentDirectory() + "\\timesync\\NistClock.exe sync";
パスが100%NistClock.exeが実行されますが正しいです。
p.StartInfo.FileName = Directory.GetCurrentDirectory()+ "\ TIMESYNC NistClock.exe \"。 p.StartInfo.Arguments = "sync";
ところで、Directory.GetCurrentDirectory()の使用には注意してください。このメソッドは、アプリケーション全体でファイルダイアログを使用している場合、何かを返すことができることに注意してください。 Assembly.GetExecutingAssembly()のような場所を使用して場所を探し、そこからディレクトリを解析する方がよい場合もあります。
string path = Directory.GetCurrentDirectory() + "\\timesync\\NistClock.exe";
string args = "sync";
ProcessStartInfo p = new ProcessStartInfo(path, args);
Process process = Process.Start(p);
「のC#」を使用してタイトルを接頭辞ないでください。それがタグのためのものです。 –