• 締切済み

TCPによるファイル転送

質問です。よろしくお願いします。 いま、winsockでクライアントからサーバにバイナリファイルを転送するプログラムを組んでいます。内容は、サーバ側を待機の状態にし、クライアントからの要求があった時点で新たにソケットを作ってそこからデータのやり取りをするというものです。 しかし、ソケットを使った通信がサーバからクライアントの一方通行になってしまっていて、データを送ることが出来ません。(クライアントから送ったデータは0になっているようにも思われます) ソケットは一方通行なのでしょうか?参考にしている本のサンプルではお互いにやり取りをしていたと思うので、そのようなことはないと思うのですが・・・。 内容分かりにくければご質問ください。 回答お待ちしています。

みんなの回答

  • mssine
  • ベストアンサー率24% (38/156)
回答No.1

双方向通信できます。 >クライアントからの要求があった時点で新たにソケットを作って この部分がチト気になりました。 clientから要求があったらaccept()して、その戻り値のSOCKETで通信します。 新しくsocket()してはダメです。

ti160
質問者

補足

回答ありがとうございます。 言葉が少なかったようですね。すみません。 一応おっしゃったとおり、accept()して通信しています。 双方向通信やっぱり出来ますよね・・・。プログラムとは別の場所で問題があるのでしょうか・・・。 引き続き何かありましたらお願いします。

関連するQ&A