AN HTTPD ゲストブック/コメント集(2001年4月29日01:36)


hidemi hm@net24.ne.jp 2001/05/01 21:57

いしどうさん
ActiveX の手法と webページご紹介ありがとうございます。
私の今回のシステムは、Netscape 使用ですが
今後IE対象の場合参考にさせていただきます。
またよろしくおねがいします。

いとさんへ
ご紹介いただいた方法を、実験確認しました。
> game.frcはfreecell.exeに渡りますが、Freecellが使うようになっていないので
> 無視されます。
> もしFreecellにプレイするゲーム番号を渡すインタフェースがあれば、特定の番号の
> ゲームを実行するようにできるかもしれません。
>
実は、これに非常に近い事を実現しようとしています。(Freecell ではないですが。。。)
参考になりました。どうもありがとうございました。

今後もCGI勉強していきます。
中田さんのこのページとログを今後も参考にさせていただきます。
どうぞよろしくおねがいします。
ありがとうございました。


いしどう ishidou@po.iijnet.or.jp 2001/04/30 03:04

hidemiさんへ。

Internet Explorer 限定の手法になりますが、そのterm_apl.exe を呼び出す
ActiveX コントロールを作成し、htmlファイル中で作成したActiveX コントロール
を OBJECT タグで指定してやる、という方法もありそうです。
詳しくは、次のURLをご覧ください。

http://www.microsoft.com/japan/developer/library/vbcon98/vbconmanuallydeployingactivexcontrols.htm (Visual Basicの場合) 

http://www.microsoft.com/japan/developer/library/vccore/_vccore_embedding_a_signed_cab_file_on_a_web_page.htm (Visual C++の場合)
ただ、わたしも中田さんと同意見で、なにか特別な理由がない限り、
ウェブサーバ上でCGIのプログラムとして実行してデータを取得して表示する
方法のほうがいいと思います。
(データを取得するアプリケーションを更新したくなったとき、クライアント
すべてを更新するよりもサーバ上のプログラムだけ更新するほうが手間が
かかりませんよね)

標準出力へ出力する内容をHTML形式にするだけですから。


hidemi hm@net24.ne.jp 2001/04/30 00:01

中田さん
いとさん
こんなに早くResしていただき
本当にありがとうございます。

term_apl.exe の使用言語はC++です。
端末PC上で動作するexeファイルです。
(データを表示するアプリです。)
端末の操作者は、PCの素人が操作するので
端末PCにインストールしている
アプリケーションをサーバ側から起動してあげる
仕掛けを検討しています。

通常のCGIでは、サーバPC上で実行されてしまい
ますが、端末上で実行させたいです。

いとさんが示していただいた方法を5/1
仕事先でためしてみます。
CGIまだ不勉強なので、中田さんのHP
私には非常にありがたいです。
実験後またわからないことが出ると
思います。恐縮ですが
またよろしくおねがいします。


いと gfh05223@nifty.com 2001/04/29 11:22

hidemiさん
全然使い方が違うかもしれませんし、思いつきですが。
例えば以下の方法で http://127.0.0.1/game.frcをクリックすると
Freecellを起動させることができます。

1. AN HTTPDのファイルタイプタブの中で
 拡張子:frc (全く勝手に作ったものです)
 MIMEタイプ:application/x-freecell
を追加。

2. ドキュメントルートの下に中身は何でもいいのですが、game.frcファイルを作成。

3. 各PCのフォルダオプション -> ファイルの種類 で「追加」を選び
 タイプの説明:Freecell
 関連付けられた拡張子:frc
 内容の種類(MIME):application/x-freecell
アクションの新規で
 アクション:open
 アクションを実行するアプリケーション:c:\windows\freecell.exe(NT/2000なら\winnt\system32の下)
を設定。

4. 上記のリンクをクリックするとブラウザから問い合わせがあります。
(もし他のホストならURLはそのIPアドレスに合わせます)

Netscapeでは「ファイルに保存」か「アプリケーションを選択」の問いには
「アプリケーションを選択」にし、c:\windows\freecell.exeなどを設定します。
さらに「開く」か「ディスクに保存」かでは「開く」にし、
「このタイプのファイルを開く時は常に尋ねる」のチェックは外しOKします。

IEでは、
 ●このファイルを上記の場所から開く
 〇このファイルをディスクに保存する
 □この種類のファイルであれば常に警告する
で OKします。

game.frcはfreecell.exeに渡りますが、Freecellが使うようになっていないので無視されます。
もしFreecellにプレイするゲーム番号を渡すインタフェースがあれば、特定の番号のゲームを
実行するようにできるかもしれません。

既存のよく使う拡張子のファイルをアプリに渡すのだとすると、既にアプリケーションと
対応付けられているので、その場合にはどうすればいいのかはよく分かりません。


中田昭雄 nakata@st.rim.or.jp 2001/04/29 07:33

hidemi さん、
term_apl.exe を CGI にするのがよいと思います。
バッチファイルで起動するのだと各PCでバッチファイルが実行できるように設定する必要がありますから。

.exeのCGIの作り方は、
http://mewc.to/CGI/
などを見てください。それとも使用言語は VB ですか?
あと、term_apl.exe を実行した結果はどうするのですか? term_apl.exe が HTMLファイルを生成してそれを見るのか、それとも直接各PCに返すのか、あるいは、結果を返す必要はないのでしょうか?


hidemi hm@net24.ne.jp 2001/04/29 01:36

はじめまして。
私は、社内開発システムで、AN HTTP Server 1.33e を使用検討しています。
初心者の質問で申し訳ないですが、他に相談する心当たりがありません。
助けていただければ光栄です。よろしくおねがいします。

私は、社内のイントラネット情報配信システムの構築を検討しています。

端末PC(win98マシン)のブラウザで、webサーバ上のhtmlファイルを閲覧し
リンクをクリックすると、端末PC上のアプリケーションプログラム
(仮にterm_apl.exe とします。私が作成するexeです。各端末PCにインストール
済みです。)が起動するようにしたいのですが、
どのように設定すればいいかがわかりません。。

http では、標準出力に出力できるとの事で、webサーバ上の
bat ファイルで[echo term_apl.exe 引数\n]としてみたのですが、
端末上では実行できませんでした。
mime の指定が必要なのかもしれませんが、どうしていいかわかりません。

ここで問い合わせるのは場所ちがいかもしれませんが、他にあてが
ありません。
申し訳ありませんが、お知恵を貸していただけませんでしょうか。。
(必要情報が不足していましたら、どうぞご指摘ください。)
よろしくおねがいします。