• ベストアンサー

winsockでcgiと通信する方法

winsockプログラミングでHTTPクライアントを作った (とはいっても、参考サイトからのソースをちょっと改造しただけ) のですが、html形式は表示されるのにcgiは表示できないみたいで困っています。 ソースも書きたいのですが、入りきらないみたいです。 それと、IEのようなブラウザでテキストボックスに何か書いてcgiに送るみたいに cgiに情報を送信する方法も教えていただけたら幸いです。 参考URLでもいいので、どうかよろしくお願いします。

  • BPG
  • お礼率60% (82/135)

質問者が選んだベストアンサー

  • ベストアンサー
  • MASATO3
  • ベストアンサー率60% (27/45)
回答No.1

VC++超初心者会議室にて似たような質問がありましたので参考までにURLを載せておきます。

参考URL:
http://www.mtakahashi.com/cgi.cgi?13257

関連するQ&A

  • Ajax&CGI

    Ajax勉強中の者です。 勉強のために簡単なAjaxプログラムを作成しているのですが、早速上手くいかず困っているので質問させて頂きます。 ※ソース等は手元にないのであまり詳しい状況は説明できないかもしれませんが・・。 実現したいことはテキストボックスがあり、そこにIPアドレスを入力しボタンを押すとサーバへ入力した値を送信し、サーバ側では送信された値を受け取りいろいろ処理をした後にクライアントへレスポンスし、クライアントで表示する みたいなことをやりたいのですが(説明下手ですみません・・)。 サーバ側はCGI(Perl)で作成しており、処理は簡単に説明するとクライアントから受け取ったIPアドレスでPingを打ってその結果をクライアントへ返すみたいな感じなのですが、上手く動作せず困っています。 PerlではNet::Pingモジュールを使ってIPアドへPingを実行しています。エラーの内容ですがXMLHttpRequestのstatusは500(サーバー内部エラー)となっており、”エラーを特定できません”と表示されます。 使用しているWebサーバはApacheですがこれは自分がテスト用PC(Linux)へインストールしたもので、もしかしたらサーバ構築に問題があるのかなぁ~なんて不安にもなっています。 テキストボックスに入力したIPアドをサーバで受信し、ブラウザにAjaxで”入力されたアドレスは~です”と表示させたりは動作したのですが・・。 また、Apacheの設定で拡張子.plをCGIとして扱わないようにすると(httpd.confファイルのAddHandlerへ.plを追記しない)サーバの処理結果でなくソースが丸ごと表示されてしまい困っています・・。 ただ拡張子.plをCGIとして扱うと処理結果がレスポンスされます。 この現象についてもどなたか原因を説明して頂けると感謝です。 原因&解決方法など分かる方はぜひご教授ください。 よろしくお願い致します。

  • テキストボックスの背景の色について

    CGIプログラミングをPerl言語で実装しています。入力画面のテキストボックスに関してはスタイルシートを使っていますが、同じブラウザ(IE)同じバージョン(6.0.28)でみていますが、テキストボックスの背景の色が異なるマシンがあります。何が原因でしょうか?

    • 締切済み
    • CGI
  • winsock通信時エラーの回避

    winsock通信でデータをクライアント側からサーバー側に送り、一定の条件でサーバー側からクライアント側にデータを戻すソフトを作成中なのですが、サーバー側が通信エラーの為か止まってしまいます。 サーバー側(winsock部分)記述 Private Sub Winsock1_Error(Index As Integer, ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean) Winsock1(Index).Close '接続を閉じる Do While Not (Winsock1(Index).State = sckClosed) DoEvents Loop On Error Resume Next Winsock1(Index).Listen If Winsock1(Index).LocalPort <> 0 Then Winsock1(Index).LocalPort = 0 End If End Sub 質問の整理ですが、 表示板にはギミックが付いておりそのギミックは止まらないのでパソコンのフリーズでは無い様子です。 で問題は通信部分だと推測されるのですが、そのエラーを起こした通信を破棄してもいいので、サーバー側の点数加算を止めない方法はありませんでしょうか。 また上記のWinsock1_Errorコードの記述じゃおかしいのでしょうか。

  • CGIのスクリが勝手に実行されないようにするにはどうすればいいですか?

    CGIのスクリが勝手に実行されないようにするにはどうすればいいですか? IEとかでCGIファイルを開くと中に書いてあるperlスクリプトが開いた瞬間に実行されますよね。 もしそれが変なスクリプトだったら、勝手に実行されるのは非常に怖いです。 せめて、「このページのCGIを実行しますか」と警告が出てほしいです。 CGIが勝手に実行されないようにするにはどうすればいいですか? また、CGIファイルでは普通にIEで「ソースの表示」を押してもCGIの実行結果が表示されるだけです。 ブラウザからCGIのソースを表示する事はできますか?

  • perl/cgiについて、教えて下さい。

    perl/cgiについて、教えて下さい。 行いたい事ですが、 1:a.html(テキストボックスとsubmitボタンがあるだけです) 2:b.html(テキストボックスとsubmitボタンがあるだけです) 3:c.html(1,2のテキストボックスの内容を表示するだけです。) 4:x.cgi があります。4のcgiにはまだ何も記述していませんが、1,2のテキストボックスで入力した値を c.htmlに表示させたいと考えています。 又、c.htmlで値を変更すると、1,2のテキストボックスの値も連動して変わるようにしたいです。 例)a.htmlのテキストボックスで「13」と入力してsubmitボタン押下。c.htmlに「13」が表示される。 c.htmlで「13」を「22」に変更すると、a.htmlのテキストボックスの値も「22」になるといったイメージです。 どうぞ、宜しくお願いいたします。

    • ベストアンサー
    • CGI
  • JavaScriptとJavaの通信について

    HTMLで、 <applet code = "XXX.class" width="100" height="100" name="app1"> </applet> JavaScriptで document.app1.showString("表示"); アプレットコード内に showString(String text)というメソッドを用意して、JavaScript側からアプレットにテキストを送っています。 このアプレットはチャットプログラムのクライアントとして動作していて、ブラウザの閉じるボタンでログアウトメソッドを呼ぶように作られています。 しかし、JavaScriptで用意したテキストボックスにテキストを打ち込んで送信するときに リターンキーを使うと、アプレットはブラウザの閉じるボタンを押したと判定して、ログアウトしてしまいます。 アクションリスナーを設定すれば、テキストの内容をリターンキーで送信できるようですが、 JavaScriptで用意したテキストボックスに、アクションリスナーを設定する方法がわかりません。 よろしくお願いします。 送信ボタンでテキストを送信することはできるのですが、 多くのチャットプログラムはリターンキーで送信できますので、リターンキーを使える方法を教えて下さい。

    • ベストアンサー
    • Java
  • CGI(?)で画像を作成

    http://www6.big.or.jp/~neon/ こちらのページを見ていただけると分かるのですが、ロゴのスタイルや大きさ等を指定し、テキストフォームにテキストを打ち込んでSubmitボタンを押すとそのスタイルが適用された文字(ロゴ)が画像として表示されています。ソースを見てみるとCGIを使ってたようなのですが、直接CGIにアクセスしたりダウンロードしてみることは出来ませんでした。 http://www.hetemeel.com/einsteinform.php また、こちらも同じような機能で、打ち込んだテキストが画像の中に表示されるというものなのですが、どうやらこれはCGIではないようです。 これらのように、クライアントが指定してきた文字や設定を反映して画像を作成するプログラムがどのような仕組みで成り立ち、動作しているのか教えてください。

    • 締切済み
    • CGI
  • Ruby CGI HTTPヘッダ

    Rubyで、 CGIがクライアント(ブラウザ等)から受けたHttpリクエストヘッダとその値を全て取得して表示したいです。(どのようなヘッダが付与されても) 以下を例に教えてください。 #!/usr/bin/ruby require 'cgi' cgi = CGI.new puts "Content-Type:text/html\n\n" puts "<html>\n" puts "<body>\n" #ここにどのように書いたら良いですか? puts "</body></html>\n"

  • バイナリファイルの通信について

    Webシステムの開発を検討しています。 サーバはJavaで開発し、クライアントはIEなどのWebブラウザではなく、VBのクライアントアプリケーションで構築しようと考えいます。 その際、問題となっている事は、バイナリファイルの通信方法です。 例えば、クライアントが起動した際にサーバからイメージファイルを送信する方法など。 バイナリファイルをテキスト文字列に変換して送信することはできると思うのですが、他には、クライアントとサーバで言語が異なる場合、一般にどのようなバイナリファイルの送信方法があるのか、色々比較した上で決めたいと思っています。 色々な送信方法や、参考Webサイトなど、ご存知の方がいらっしゃいましたらご教授願います。

  • メール送信フォームのCGI

    CGI初心者なので メール送信フォームCGIを無料配布のところからお借りしました。 メール送信は上手くいっているのですが送信結果がブラウザ上に表示されます。 ↓ (確認メールを送信します以下の分) これを表示させないようにCGIのブラウザ表示の部分だけを削除したのですが、CGIが動かなくなります。 単純に削除するだけではダメなのでしょうか? 初歩的?なことかもしれませんが・・・よろしくお願いします。

専門家に質問してみよう