2011-08-03 4 views
1

現在、私はサーバーマネージャーで作業しています。サーバーはコマンドラインアプリケーションです。サーバーはProcessクラスを通して実行され、ウィンドウは非表示になります。私は、サーバーウィンドウを表示せずに、コマンドを(セーブオール)コマンドを挿入する方法を理解しようとしています。私はStreamWriterとプロセスの標準入力を使用しようとしましたが、うまくいきませんでした。誰もこれを動作させる方法を知っていますか?コマンドラインベースのプロセスにコマンドを注入する

+1

どうやってうまくいかないのですか?プロセスを開始し、その 'StandardInput'を使用するためにこれまでに試した関連コードを表示してください –

答えて

0

プロセスの標準I/Oストリームのいずれかをリダイレクトできるようにするには、シェルの実行を無効にする必要があります。おそらくあなたはしなかったでしょう。

var process = new Process 
{ 
    StartInfo = new ProcessStartInfo 
    { 
     FileName = Environment.GetEnvironmentVariable("COMSPEC"), 
     RedirectStandardInput = true, 
     UseShellExecute = false, 
    }, 
}; 
if (process.Start()) 
{ 
    process.StandardInput.WriteLine("echo FOOBAR!"); 
    process.WaitForExit(3000); 
    process.StandardInput.WriteLine("exit"); 
    process.WaitForExit(); 
}