2017-01-16 6 views
0

私はコマンドのコマンドを2つ実行するプログラムを持っています。私が使用するコードは、このです:パラメータでcmdコマンドを実行する

Process proc = new Process(); 
proc.StartInfo.WorkingDirectory = @"C:\OpenSSL-Win64\bin"; 
proc.StartInfo.FileName = "CMD"; 
proc.StartInfo.Arguments = "/C openssl genrsa -out ProtTest.key 2048 & openssl req -new -sha256 -key ProtTest.key -out ProtTest.csr"; //if no arguments comment this line 
proc.StartInfo.UseShellExecute = false; 
proc.StartInfo.RedirectStandardInput = true; 
proc.StartInfo.RedirectStandardOutput = true; 
proc.StartInfo.RedirectStandardError = true; 
proc.Start(); 

コードが正常に動作しますが、2番目のコマンドはCMDウィンドウを実行したときにちょうど座って、ユーザーがその上の電子メールアドレスの都市と同様に、いくつかの値を書くことを待ちます。

私の質問は、これらのパラメータをcmdウィンドウにも転送する方法です。

+0

あなたは、電子メールと市町村を直接入力したり、アプリケーションを提供したりすることを許可しますか? –

+1

あなたのアプリケーションからそれらを送信したい場合は、 'proc.StandardInput.Write()'があります。 –

+0

私は、ユーザーがテキストボックスに値を書き込むし、cmdに値を送信したい。 –

答えて

1

私はあなたが探しているものだと思う:

proc.StandardInput.WriteLine(textbox1.Text); 
proc.StandardInput.WriteLine(textbox2.Text); 

あなたはindependantlyコマンドウィンドウでアプリケーションを実行していたかのようにこれは、あなたが入力するデータを可能にします。

関連する問題