From: yharuo@...7.dddd.ne.jp Date: 2000-11-13T18:51:21+09:00 Subject: [ruby-list:25917] Re: 子プロセスから標準出力と終了ステータスを得たい はるおです。 お手を煩わせてすみません。 On Mon, 13 Nov 2000 17:56:24 +0900 Nibu wrote: |newです. |問題が良く飲み込めていないのですが,(;^^) | |result = `type c:\\boot.ini` |print $?,"\n" |print result,"\n" | |に対して, | |0 |[boot loader] |timeout=30 |default=multi(0)disk(0)rdisk(0)partition(2)\WINNT |[operating systems] |multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 |Professional" /fastdetect | |と言う応答ではダメなんでしょうか? |(ActiveScriptRuby1.6.1調べ) 子プロセスにはVBアプリを実行させています。 そして終了ステータスは自分で値を設定します。 現状では、VBの中で終了ステータスを、-1,0,1,2・・・のように 設定すると上式のresultには、-256,0,256,512・・・が入ってきます。 (256で割った値と一致する) |ちなみに, |result = system("type c:\\boot.ini") |print $?,"\n" #==> OK |print result,"\n" #==> false | |には, | |-1 |false | |が,返ってきました. 同様に、VBアプリをsystem関数で実行するとresultは正しく返ります。 で、ソースを弄る必要があるのは、Rubyスクリプトのソースではなく Cで書かれたRubyソースの方です。 どこを直せばいいのでしょうか? ヒントだけでも教えて貰えませんか>まつもとさん # 念の為、最新のActiveScriptRubyもインストールし実行してみました # がダメ(Ruby-1.6.1)でした。 --- Haruo