ページ 11

DXライブラリのチャットプログラムの通信で成功したり失敗したりする

Posted: 2016年6月22日(水) 12:29
by sadora3
DXライブラリのサンプルプログラムの「21.チャットプログラム基本」についての質問です。
http://dxlib.o.oo7.jp/dxprogram.html

私は3つのPCを所持しています。以下のPCAとPCBとPCCです。

・PCA
Windows10
LANケーブルでルーターと接続

・PCB
Windows7
無線

・PCC
Windows10
無線

この3つのPCを同じルーター内で上記のチャットプログラムでチャットしようとすると、以下のような結果になります。
ちなみに、ファイアウォールは全てのPCで起動してあります。ファイアウォール切るのは怖いですから・・・。
あと、全てちゃんと受信待機させてから送信を試みています。
・PCAを受信側、PCBを送信側にした場合→成功
・PCBを受信側、PCAを送信側にした場合→失敗

・PCAを受信側、PCCを送信側にした場合→失敗
・PCCを受信側、PCAを送信側にした場合→失敗

・PCBを受信側、PCCを送信側にした場合→成功
・PCCを受信側、PCBを送信側にした場合→失敗

なぜ一方的にしか成功しなかったり、両方向で失敗してしまうのでしょうか?
これを全て成功させるには、どうすればいいでしょうか?
ファイアウォールが失敗の原因だったりしますか?


あとチャットプログラムは本家のを少し改造して、以下の処理がWinMain関数の一番上に追加されています。

コード:

SetOutApplicationLogValidFlag(FALSE);	//ログファイルの生成をOFF
ChangeWindowMode(TRUE);					//ウィンドウモードで起動
SetDoubleStartValidFlag(TRUE);			//ウィンドウの多重起動を許可
それをリリースビルドして出来上がったexeを使っています。


[・追記]
ビルドした環境を書くのを忘れていました・・・。すみません。
PCA(Windows10)
VisualStudio2010
C言語
DXライブラリ

Re: DXライブラリのチャットプログラムの通信で成功したり失敗したりする

Posted: 2016年6月23日(木) 01:19
by sadora3
申し訳ありません!自己解決しました!
やはりファイアウォールで弾かれていたようです。
ファイアウォールの例外にチャットプログラムのexeを全てのPCで許可したところ、全てのPCで上手くいきました。
自分でファイアウォールが怪しいと疑っておきながら、確認もせずにここに丸投げしてしまって、かなり軽率な行動だったと思います。
深く反省しております・・・。本当に申し訳ありませんでした。
今後このようなことは事前に確認してから質問いたします。