AN HTTPD ゲストブック/コメント集(2005年1月10日07:23)


はしもと tatata@whom.co.jp 2005/01/14 16:44

□eternally様
ありがとうございます。納得できました。

□通りすがり様
速度的な問題は考えていませんでした。速度に差があるのですね?

調べたところだとexeを呼び出して結果を受け取る場合、
exeの標準出力を一時ファイルへ書き出し、それを呼び出し元で
読み込んで実現するようだったので、そういうものなのかなぁ???
と感じていました。
dllであればデータを受け渡すインタフェースがあるのでは?と想像し、
その方が安定するのでは?と勝手に予想していたため、dll呼び出しを探して
おりました。

お話からするとexe呼び出しも一般的なようですので、
そちらを調べてみます。
ちょっと難しく考えすぎてしまっていたようで、反省しています。
ご指導、ありがとうございました。
#AN HTTPDに直接関係しない内容が続き、ご迷惑をおかけしてしまいました。
#申し訳ございません。


通りすがり なし 2005/01/13 20:34

はしもとさん
普通にphp.exeにphpスクリプトのパスを渡せばいいだけと思うのですが・・・
直接dllを呼び出したいのだからこのような質問をされたのだとは思いますが、
exeを起動する方法は動作速度的にそれがいやだからでしょうか?


eternally 2005/01/13 18:42

はしもとさん
中田さんの代わりにお答えします。
その通りです。
標準出力をするプログラムであれば呼び出すことが可能です。


はしもと tatata@whom.co.jp 2005/01/12 18:37

>また、それであれば、標準出力するexeプログラムを自作すれば、
>php.exeと同様に外部プログラムとして呼び出して使えると考えても
>問題ないでしょうか?

先の問い合わせが誤解を招きやすい表現でしたので、以下に補足させていただきます。

標準出力するexeプログラムを自作すれば、
php.exeと同様に、AN HTTPDから外部プログラムとして呼び出して
使えるのでしょうか?

よろしくお願いいたします。


はしもと tatata@whom.co.jp 2005/01/12 18:34

中田様、ご回答ありがとうございます。
質問をする前にPHPに関して広くウェブを検索してしまい、
AN HTTPDでdllを利用していると勘違いしたまま質問してしまいました。
お詫びいたします。

ご指摘をふまえて再確認いたしました。
AN HTTPDではphp.exeを指定してCGIとして利用しておりました。
申し訳ございません。

もし差し支えなければ、もう少し教えてください。
php.exeはコマンドラインで動作するプログラムです。
それをAN HTTPDから利用できるということは、
DOSプログラムとして呼び出し、標準出力を受け取っているのでしょうか?
その方法であれば、外部プログラム呼び出しを実現できそうなのです。
AN HTTPDでの動作実績は、非常に心強く感じます。
よろしければ情報として教えていただけると幸いです。

また、それであれば、標準出力するexeプログラムを自作すれば、
php.exeと同様に外部プログラムとして呼び出して使えると考えても
問題ないでしょうか?

たび重なるお願いで恐縮ですが、どうぞよろしくお願いいたします。


中田昭雄 nakata@st.rim.or.jp 2005/01/10 16:36

はしもとさん、
AN HTTPD が php4ts.dll を直接ロードしていることはないはずですが。。。

php4ts.dll は php.exe や php4isapi.dll がインポートしているDLLです。
PHPはソースが公開されていますので、そちらを見るのがよいのではないでしょうか。


はしもと tatata@whom.co.jp 2005/01/10 07:23

AnHttpdを使わせていただいております
便利なソフトの開発&ご提供、ありがとうございます
以下、AnHttpdと直接関係のない技術的な問い合わせで申し訳ありません。

Delphiからphp4ts.dllを呼び出して利用したいと考えていますが、
そのための適当な情報(呼び出しパラメータや関数名などの仕様)を見つけられずに苦慮しています。
そんな中、Winアプリからphp4ts.dllを呼び出して有効活用している例として、思い当たったのがご利用させていただいていたAnHttpdです。
php4ts.dllを呼び出して利用する上で参考になさったページなど、よろしければ教えていただけると幸いです。きっかけになるような情報だけでも十分でございます。差し支えない範囲で可能であれば・・。
まことに勝手なお願いと思いますが、どうぞご了承くださいませ。