2011-03-09 17 views
1

「GEORGE SMITH」のような文字列を返すjavascriptを実行します。私はその情報を読んでいますが、このコードを実行すると「指定された実行可能ファイルは有効なWin32アプリケーションではありません」というメッセージが表示されます。標準出力の問題を読む

この情報はどのように取得できますか?私は.batからjavascriptを呼び出そうとしましたが、そこから出力を得ることはできません。誰でも助けてくれますか?

これはコードです:

{ 
    Process proc = new Process(); 

    ProcessStartInfo startInfo = new ProcessStartInfo(); 
    startInfo.CreateNoWindow = true; 
    startInfo.UseShellExecute = false; 
    startInfo.RedirectStandardOutput = true; 
    startInfo.FileName = "cardholder.js"; 
    startInfo.WindowStyle = ProcessWindowStyle.Hidden; 
    proc.StartInfo = startInfo; 
    proc.Start(); 

    nombreApellido = proc.StandardOutput.ReadToEnd(); 

    proc.Close(); 
    proc.Dispose(); 
} 

答えて

2

実行可能ではなく、あなたがそれを実行することはできませんジャバスクリプトファイル。あなたはwscript.exeとを実行し、コマンドライン引数としてcardholder.jsを渡す必要があり

startInfo.FileName = "wscript.exe"; 
startInfo.Arguments= "cardholder.js"; 
+0

.jsコマンドラインインタプリタは考えられませんでした。 – CheeZe5

+0

私は前にそれをしていたので、よく分かっていました。しかし、スクリプトは楽しいものではありません... – Aliostad

+0

これはこの方法で動作しますが、その情報を読み取る最も良い方法は何ですか? Using StandardOutput.ReadToEnd();または私はStreamReaderを使うべきですか? – NicoRiff

0

cardholder.jsは実行可能ではありません。 startInfo.FileNameは実行可能ファイルである必要があります。 .jsファイルを '実行'するには、javascriptインタープリタが必要です。

関連する問題