私のC#アプリケーションからperlスクリプトを呼び出そうとしています。 perlスクリプトには、ユーザーが何かを入力する必要があるプロンプトがあります。私はそれを表示するように見えることはできません。これは私がそれを呼び出すために使用する関数です。 System.Enviroment.SetEnvironmtVariableに "C:\ Perl \ bin \;"というパスを設定する別の関数があります。他のものは、他のプロセスのために必要と一緒にそれを実行しているようだが、それはどちらかだけのメモ帳でスクリプトを開いたり、まったく何もしません前に私が言ったようにC#アプリケーションからのプロンプトを使用するperlスクリプトの実行
private void getRevisionAndUpdate()
{
Process myProcess = new Process();
myProcess.StartInfo.FileName = "cmd.exe";
myProcess.StartInfo.WorkingDirectory = @"the directory that has the perl script";
myProcess.StartInfo.Arguments = @"/c SaidPerlScript.pl";
myProcess.StartInfo.UseShellExecute = false;
myProcess.Start();
myProcess.WaitForExit();
}
。また、私はcmd.exeとperl.exeを実行しようとしたことに注意してください。 cmdはそれをメモ帳で開き、perlが表示されないようにします。
問題は私が思うようなコマンドとしてスクリプトを渡していました。私はコードの別のセクションから "/ c"をコピーしました。これのためにそれを必要としませんでした。 – dstew