2017-05-29 2 views
0

node.jsでは、exe(C#コードで作成)を実行する子プロセスを作成したいと考えています。私は、いくつかのデータをnode.jsからexeに渡して、exeからデータを取得したいと思っています。ノードからc#exe子プロセスを実行して、メッセージを前後に受信する方法は?

これは可能ですか?

おかげで

+0

子プロセスでなければならないのですか?実行可能ファイルでなければなりませんか?両方の質問に対して答えがノーであれば、[Edge](https://github.com/tjanczuk/edge)を使用することができます。 – Aron

+0

チェックアウトされている可能性があります... http://tjanczuk.github.io/edge/#/ ...とhttps://www.hanselman.com/blog/ItsJustASoftwareIssueEdgejsBringsNodeAndNETTogetherOnThreePlatforms.aspx – Mick

+0

これはおそらく使用できますが、 c#からnode.jsにデータを戻しますか?また、私はこれらの3つのインポートをSystem#を使用してC#で使用します。 Microsoft.Office.Interop.Wordを使用している ; "System.Text.RegularExpressions;を使用して、 ;' node.jsでどのようにロードするのですか? – omega

答えて

1

データは、環境変数や標準入力により子プロセスに渡すことができ、そして子プロセスがstdoutに書き込むことで、データを送信することができます。このように:他の人のよう

const testData = JSON.stringify({ a: 1, b: 2 }); 
const result = require('child_process').execSync('printenv TEST_DATA',{ 
    env: { TEST_DATA: testData } 
}); 
console.log(JSON.parse(result)); 

または

const result = require('child_process').execSync('cat',{ 
    input: testData 
}); 
0

あなたはパラメータを渡すためとして、私は単純に引数を渡すと、それはディスクからデータを読み込む必要があります、プロセスを呼び出すことができます言及しています。ファイルの場所を渡して、C#プログラムにそれらのファイルを読み込ませるだけです。単語ファイル自体を渡す必要はありません。

+0

引数は文字列になりますが、 – omega

+0

?なぜそれが問題なのか分かりません。あなたのC#プログラムにワードファイルを与えたいなら、それにURLの文字列を与えることができます。何か不足していますか? – Kelly

+0

文字列を渡すことができるかどうかを知りたい場合 – omega

関連する問題