1

ユーザーが他の.exeアプリケーションをたくさん実行できるようにするGUIとして構築されたappjsアプリケーションがあります。これらの他の .exe アプリケーションは、'spawn()' コマンドによるマウス クリックで作成されます。一部の .exe プログラムはコマンド ラインでの出力を必要としますが、メイン アプリケーションはコマンド プロンプトを使用しません。

したがって、基本的には、子プロセスが stdout をコマンド プロンプト ウィンドウにパイプする必要があります。コマンドプロンプトウィンドウは事前に実行されていません。私はjsnodeが初めてで、これを機能させるのに問題があります。

これがコードです。アプリケーションの名前が関数に渡され、文字列を作成してからプロセスを生成しています。

var appName = this.getAttribute('app');    
processStr = './' + appName + '.exe';    
var spawn = require('child_process').spawn;    
cmd  = spawn(processStr, [], { cwd: './', env: process.env} );

以下に変更しても、コマンドプロンプトウィンドウが表示されないことに注意してください。

 cmd  = spawn('c:/windows/system32/cmd.exe', [], { cwd: './', env: process.env} );
4

1 に答える 1

0
var spawn = require('child_process').spawn;
var child = spawn('echo',  ['Hello world!']);

child.stdout.pipe(process.stdout)
于 2013-09-10T18:30:11.687 に答える