★初心者にVisual C++を教えるスレ★ Part30
■ このスレッドは過去ログ倉庫に格納されています
0899デフォルトの名無しさん
2008/07/29(火) 01:07:53C++/CLIで、コンソールアプリケーションを操作するアプリを作ろうとしてます。
コンソールアプリは標準入力から情報を受け取って標準出力に吐き出す、というモノ。
でもって、コンソールアプリに情報を送り、返ってきた情報に応じて処理を分岐し、
さらにコンソールアプリに情報を送って…ということをやりたいと思っています。
ところがその第一歩目から躓いてしまいました。
myProcess->StartInfo->UseShellExecute = false;
myProcess->StartInfo->RedirectStandardInput = true;
myProcess->StartInfo->RedirectStandardOutput=true;
myProcess->Start();
StreamReader^ myStreamReader = myProcess->StandardOutput;
StreamWriter^ myStreamWriter = myProcess->StandardInput;
myStreamWriter->WriteLine("list");
textBox1->Text=myStreamReader->ReadLine();
myStreamWriter->WriteLine("exit");
myStreamWriter->Close();
myStreamReader->Close();
myProcess->WaitForExit();
myProcess->Close();
…というコードを書いたら、「list」のコマンドは実行されるのに、「exit」が実行されません。
listの位置にexitを持ってきたら正しく動作します。
何故期待通りに動いてくれないのでしょうか。また、どうしたら正しく動作するようになるのでしょうか。
■ このスレッドは過去ログ倉庫に格納されています