プロが教えるわが家の防犯対策術!

Visual Stadio.NET 2003 C#で開発中です。

質問したい内容は、プログラムからコマンドプロンプトを操作をすることなんですが、
例えば、(コマンドプロンプトの画面で)
d:
cd a
とやるようなコードを教えて下さい。
一行だけのコマンドならネット上にもあったのですが、複数行続けて打つようなやり方を見つけられなかったので、宜しくお願いします。

A 回答 (2件)

string[] strCmds = {@"/c dir c:\*.* /w", @"/c dir c:\work /w"};



for ( int i = 0; strCmds.Length; i++ )
{
psi.Arguments = strCmds[i];
System.Diagnostics.Process p = System.Diagnostics.Process.Start(psi);

string results = p.StandardOutput.ReadToEnd();
p.WaitForExit();

Console.WriteLine(results);
}

といった感じでしょうか。(一部抜粋したコードです。 あとはDOBONさんのところを参照ください)
私の環境で、動作を確認しています。
    • good
    • 0
この回答へのお礼

すみません。遅くなりましたができました。ありがとうございました。

お礼日時:2008/01/31 08:32

1行だけのコマンドの実行方法はわかるということなので、


その部分のコマンドを実行する個所を配列変数にして、繰り返し実行するというのはどうでしょうか?

string[] strCmds = {"d:", "cd a"};

for ( int i = 0; i < strCmd.Length; i++ )
{
//コマンドを実行するコードをここに記述
}

参考URL:http://dobon.net/vb/dotnet/process/standardoutpu …

この回答への補足

すみません。できませんでした。↑のURLも参考にさせてもらったんですが…
申し訳ないのですがコードを教えてもらえないでしょうか?

補足日時:2008/01/29 10:06
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!