• ベストアンサー

VC++でのTCP/IPサンプルプログラムでClient.exeを複数起動すると通信できない

CQ出版Interface誌12月号のVC++でのTCP/IPサンプルプログラム http://www.cqpub.co.jp/interface/download/contents.htm 第1章 C言語で書くシンプルなWebサーバの製作 このプログラムのserver.exeを起動させて、Client.exeを複数起動させてみたのですが、Client.exeの片方が通信できるのですが、網片方のClient.exeはサーバとの通信ができていないようで、通信できていた方のClient.exeを停止させると通信ができるようになるようです。 このプログラムではClient.exeが複数あった場合に同時に通信を行わせると言うことはできないのでしょうか?

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

  • ベストアンサー
回答No.2

たった100行にも満たないプログラムなのに。。。 解析されてみたのでしょうか? こんな事で一々質問されている事が心配です。 listenの引数で最大接続可能数が1となっているため、クライアントは一つしか許容出来ないようになっています。

参考URL:
http://www.golgo.jp/winsock.html#l_listen
techhouse
質問者

お礼

回答いただきありがとうございます。 まだまだVC++を使いこなせていないということが、いろいろとググっていて感じさせられました。 以前VC++2008を入れて何がやれるのかということをいろいろ見ていたのですが、とりあえず初心に返り、初級編からクラスやメソッドなどのオブジェクト指向プログラミングを1から見直してネットワークプログラミングをやってみます。

その他の回答 (1)

  • Lchan0211
  • ベストアンサー率64% (239/371)
回答No.1

> このプログラムではClient.exeが複数あった場合に同時に通信を行わせると言うことはできないのでしょうか? その通りです。 Serverは、非常に簡単なプログラムなので 同時に1コネクションの処理しかできない作りになっています。

techhouse
質問者

お礼

回答いただきありがとうございます。 まだまだVC++を使いこなせていないということが、いろいろとググっていて感じさせられました。 以前VC++2008を入れて何がやれるのかということをいろいろ見ていたのですが、とりあえず初心に返り、初級編からクラスやメソッドなどのオブジェクト指向プログラミングを1から見直してネットワークプログラミングをやってみます。

関連するQ&A

  • CQ出版Interface誌12月号のVC++でのTCP/IPサンプルプログラムは127.0.0.1以外でも使える?

    CQ出版Interface誌12月号のVC++でのTCP/IPサンプルプログラムは、 http://www.cqpub.co.jp/interface/download/contents.htm ”第1章 C言語で書くシンプルなWebサーバの製作” このサイトからダウンロードしてCプログラムを見てみたところ、クライアント側のexeファイルを起動すると自動的に127.0.0.1へ接続するようになっているようですが、これだと同じパソコンのみにしか接続できないような気がするのですが、この部分を192.168.1.*のようなIPアドレスに変更すればサーバプログラムと、クライアントプログラムを別々のPCで通信できるようになると言うことでしょうか。

  • CQ出版Interface誌12月号のVC++でのTCP/IPサンプルプログラムを動作できない

    Interface誌の12月号にMicrosoft Vistal C++ 2008 Express EdtionでのTCP/IPサーバ、クライアントのサンプルプログラムが下記のURLからダウンロードできるようになっており、 http://www.cqpub.co.jp/interface/download/contents.htm ”第1章 C言語で書くシンプルなWebサーバの製作”の項目 このサイトからダウンロードして、自分のPCでサーバとクライアントを両方CTRL + F5で起動させようとしたところ、サーバプログラムはちゃんと起動するのですが、クライアントを起動することができませんでした。雑誌の中ではちゃんと動くようなのですが、なぜ自分のPCでは動かないのか原因がわかりません。ご存じの方いらっしゃいましたら是非ご教授よろしくお願いいたします。 そのときの症状を映像で取りましたのでyoutubeにアップしておきます。

  • VC++でのTCP/IP接続プログラム

    こんにちは。 VC++で開発を行っています。 TCP/IP接続(ストリーム型)のプログラムがうまく書けません。 UDP/IP接続は出来たのですが・・・。 TCP/IP接続で、送受信可能なプログラムを作りたいと思っています。 一つのアプリケーションで、サーバーとクライアントの役割を持たせたいのですが・・・。 不可能でしょうか?? VC++でTCP/IPを利用したプログラムのサンプルでも構いません。 なにか情報をお持ちの方、教えてください。 よろしくお願いします。

  • C#とTCP/IPを利用したサーバープログラム(複数クライアント対応)

    VC#とTCP/IPを利用したサーバープログラムを制作しています。 サーバーとクライアントの1対1での通信には成功したのですが、1つのサーバーで複数のクライアントと通信する方法がわかりません。 同じポート番号を利用できるのでしょうか。ただ単にTcpClientの配列を作ればいいのでしょうか。やはりクライアントの数だけスレッドを作らないといけないのでしょうか。 環境はWindowsVistaでMicrosoft Visual C# 2008 Express Editionを使用しています。 詳しい方がいましたらぜひ具体的なC#でのコード等を教えてください。 よろしくお願いいたします。

  • TCP/IP通信型プログラムです。作成するのはクライアントです。たとえ

    TCP/IP通信型プログラムです。作成するのはクライアントです。たとえば、サーバから入力を求められ、それが正しくあれば、次の状態へ。正しくなければ、状態を遷移させなかったり。そして、状態が遷移したということをサーバに伝えなければなりません。自分としては、条件式などを利用しようかと思っているのですが・・・。(状態遷移図の作成ではありません。) ほんのわずかなヒントでもいいので、お助け願います。

  • TCP/IP通信型プログラムです。作成するのはクライアントです。たとえ

    TCP/IP通信型プログラムです。作成するのはクライアントです。たとえば、サーバから入力を求められ、それが正しくあれば、次の状態へ。正しくなければ、状態を遷移させなかったり。そして、状態が遷移したということをサーバに伝えなければなりません。自分としては、条件式などを利用しようかと思っているのですが・・・。(状態遷移図の作成ではありません。) ほんのわずかなヒントでもいいので、お助け願います。

  • TCP通信による1サーバ、複数クライアントモデル

    TCP通信による1サーバ、複数クライアントモデル(チャット等)をwinsockを使用して作成したいのですが、複数のクライアントからサーバにアクセスする方法がわかりません。マルチスレッドで、クライアントからの受信待ちスレッドと、ログイン中クライアントへのメッセージ送信スレッドが必要(?)なんでしょうか?また具体的なソースなど掲載されているページがありましたら教えてください。

  • VB.NETによるTCP通信プログラムについて

    VB.NETによるTCP通信プログラムについて VB.NETによりTCP通信プログラムを開発しようと思っておりますが、TCP通信はクライアントとサーバーに機能が分かれると思いますが、一つのアプリケーションでサーバー機能とクライアント機能を有するアプリケーションは開発が可能でしょうか? サンプルプログラムを探しているのですが、どれも、クライアントとサーバーのどちらかの機能だけですが、両機能を持ち合わせたサンプルを掲載されているサイトをご存じの方は、お手数ですが、教えて頂けると助かります。 ご教授のほど、よろしくお願い致します。 Windows XP SP3 Visual Studio 2008 Visual Basic

  • TCP/IP通信型プログラムです。 サーバのポート番号をクライアントが

    TCP/IP通信型プログラムです。 サーバのポート番号をクライアントが取得するプログラムで、 while(1) { saddr.sin_port=htons(port); port++; fprintf(stdout, "%d\n", port); } のようなのをプログラムのどこに入れれば よいのでしょうか?

  • IP/TCPの通信規格がわか

    現在、遠隔操縦ロボットの製作で通信システムをクライアントサーバー方式を使用しています。 IP/TCPを使っていましたが、質疑応答で、IP/TCPの通信規格は何かと言われましたが答えることができませんでした。どなたか教えてくれませんか?

専門家に質問してみよう