recv関数によりデータを受信するには?

解決


るー  2007-05-31 14:49:21  No: 65255  IP: 192.*.*.*

ネットワークカメラを利用したプログラムを最近作りはじめました.
カメラはBB-HCM381で,開発環境はVC++です.

早速質問ですが,
recv関数を用いてデータの取得が出来なくて困っています.
はじめに,
[Winsockの初期化]->[ソケットの作成]->[ローカルポート番号の指定]->[サーバのIPアドレス取得]->[サーバとの接続]
を行い,ここまでは成功しているようです.
この後,
char* receive_order = "GET nphMotionJpeg?Resolution=320x240&Quality=Standard ********";
int send_flag = send(soc, receive_order, sizeof(receive_order), 0);
で画像を送るように命令を送り,次に,
char* recv_buf[20000];
recv(soc, recv_buf, sizeof(recv_buf), 0);
で,データを受け取ろうとしているのですが,
プログラムがrecv関数で止まってしまい,返ってきません.

ご教授ください.

編集 削除
とおりすがり  2007-05-31 15:12:32  No: 65256  IP: 192.*.*.*

「GET 」までしか送ってないからでしょ

編集 削除
επιστημη  2007-05-31 16:13:51  No: 65257  IP: 192.*.*.*

sizeof(receive_order) っていくつになります?
# 文字列の長さをsizeofで求めるなんて誰に習ったんだ...

編集 削除
るー  2007-05-31 16:31:24  No: 65258  IP: 192.*.*.*

ありがとうございます.
確かにsizeofを調べたら4になっていて,「GET 」までしか送られていませんでした.
全然気がつきませんでした.勉強不足です.
助かりました.

編集 削除
momomo  2007-07-20 13:12:37  No: 65259  IP: 192.*.*.*

私も同じようなプログラムを作成しています。
私の場合、sendをした後、応答パケットが返ってくるまでに異常に時間が
かかってます。Wiresharkで確認したところ、約55秒かかってます。
原因が分かる方教えてください、お願いします。
ちなみに、使用しているカメラはBB-HCM100です。

編集 削除