0

私は C# で Process クラスをいじっています。以下に、cmd.exe を開いて DIR コマンドを実行するために使用したいコードをいくつか示します。ただし、コードを使用しようとすると、cmd.exe は開きますが、コマンドは実行されません。なぜこれが起こっているのですか?どうすれば修正できますか?

Process cmd = new Process();
cmd.StartInfo.FileName = @"cmd.exe";
cmd.StartInfo.Arguments = @"DIR";
cmd.Start();
cmd.WaitForExit();
4

2 に答える 2

3

/Kコマンド コンソールをビデオのままにして、後続の DIR コマンドを受信できるようにするオプションを渡してみてください(終了せずに)。

Process cmd = new Process();
cmd.StartInfo.FileName = @"cmd.exe";
cmd.StartInfo.Arguments = @"/K DIR";  // <-- This will execute the command and wait to close
cmd.Start();
cmd.WaitForExit();

/K オプションを使用すると、ウィンドウがすぐに閉じず、閉じるボタンをクリックするか、終了コマンドを入力する必要があるため、コマンド ウィンドウで何が起こるかをよりよく理解できます。コマンドを発行した後に終了する場合は、/Cオプションを使用します。

于 2013-05-22T16:26:29.597 に答える
1

cmd.StartInfo.Arguments = @"/c DIR";

于 2013-05-22T16:27:49.690 に答える