これが私のNode.JSコードです
var rec = spawn('rec.exe');
rec.stdout.setEncoding('ascii');
rec.stdout.on('data', function (data) {
console.log(data);
//do something
}
);
私の C++ プログラム (Cygwin でコンパイル) は、printf() を使用して stdout に何かを書き込みます。
if(bufsize!=0&&rec[0]=='0')
{
printf("%s\n",rec);
//printf("Received,write into exchange file\n");
//fp=fopen("recvdata.txt","w");
//fprintf(fp,"%s\n",rec);
//fclose(fp);
}
しかし、データ イベントは発行されません。
C++ コードは ping などの他のコマンドで動作するため、C++ コードに何か問題があると確信しています。
次に、この場合、イベントが発行されることに気付きました
if(fd==-1)
{
printf("Failed,again\n");
return 0;
}
これは、プロセスが終了すると、すべてが正常に機能することを意味します。しかし、それは私が望むものではありません。
誰かが私を助けることができますか?ありがとう。