CGIからC言語プログラムを実行し、戻り値を標準出力以外で取りたいのですが?
[上に]
[前に]
[次に]
のどあめ
2000/02/15(火) 17:45:03
いつも利用させて頂いております。
質問なのですが、
現在ブラウザからCGIを呼んでC言語プログラムを実行し、戻り値を標準出力以外で取りたいのですが、他に戻り値を取る方法ってあるのでしょうか?
よろしくお願いします。
EMI
2000/02/15(火) 17:57:59
具体的には、一体何をやりたいのでしょうか?
ちなみに「Cとして」標準的な戻り値といえば、main関数の戻り値に決まってますが。(それをどうCGIに役立てるかは別として)
ラウォッチ
2000/02/15(火) 18:13:19
>戻り値を標準出力以外で取りたいのですが
ってことは、今は戻り値を標準出力しているのですか?
そんなこと、CGIでは、できないと思います。
もしかして、戻り値とは、ブラウザに出力するHTMLソースのこと???
あとは、EMIさんとおなじで、具体的には〜
のどあめ
2000/02/15(火) 18:19:08
EMI さん。有り難うございます。
漠然とした質問ですいません。
現在CプログラムをCGIで走らせているのですが、走ってC側で戻り値もセットして終了している所まで確認できるのですが、どうもCGI側で戻り値が取れてないのです。
標準出力で取っていることが原因なのでは?
という話が出てきたので質問した次第です。
標準出力だから取れないという原因はありえないのでしょうか?
変な質問ですいません。
よろしくお願いします。
のどあめ
2000/02/15(火) 18:35:22
ラウォッチ さんありがとうございます。
行き違えになってしまいました。
CGIでは、
open(IN, "Cプログラム $data1 $data2 |");
$buffer=<IN>;
close(IN);
($Data1,$Data2) = split(/=/,$buffer);
で、戻り値を$Data2に入るようにしています。
Windowsの簡易サーバーではOKだったのですが、Linuxサーバーに乗せかえると戻らないのです。。。
くううううう
何でなのかさっぱりわからないのです〜(T_T)
ラウォッチ
2000/02/15(火) 18:56:32
戻り値を使わないで、
Cプログラムの標準出力で最後に 「=戻り値」を付加したらどうですか〜
ただし、標準出力データ中に多数「=」があると誤動作しますが...。
EMI
2000/02/15(火) 19:37:29
えーと、確認したいのですが、使いたいのはmain関数の戻り値か、プログラムの出力結果かどっちですか?
[上に]
[前に]
[次に]