0
私はcmd.exe(テスト "DIR"コマンド)から標準を取得しようとしており、テキストボックスに入れています。しかし、私がプロセスを開始するときはいつでも、プログラムはハングします(ボタンは押されません)。C#でハングするプロセスを使用してcmd.exeを呼び出す
private void cmd_test()
{
Process pr = new Process()
{
StartInfo = {
FileName = "cmd.exe",
UseShellExecute = true,
CreateNoWindow = true,
RedirectStandardOutput = true,
RedirectStandardInput = true,
RedirectStandardError = true,
}
};
pr.Start();
pr.StandardInput.WriteLine("DIR");
TextBox1.Text = pr.StandardOutput.ReadToEnd();
}
また、WriteLineの代わりにStartInfoブロックにArguments = "DIR"
を試しました。
cmd.exeにコマンドを正しく送信するにはどうすればいいですか?
は、感謝を働きました!なぜ私のバージョンにぶら下がっていたのか分かりませんか? – FyreeW
"/ C dir" –
も必要です。出力ストリームをリダイレクトするには、UseShellExecuteをfalseに設定する必要があります。詳細はこちらhttps://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.useshellexecute(v=vs.110).aspx – Fred