ソケット通信を2ポート同時に開くと落ちる – プログラミング – Home

ソケット通信を2ポート同時に開くと落ち...
 
通知
すべてクリア

[解決済] ソケット通信を2ポート同時に開くと落ちる


いば
 いば
(@いば)
ゲスト
結合: 23年前
投稿: 2
Topic starter  

VC++で、ソケット通信のプログラムを作成しています。
PC-CLIENTからEWS-FTPSERVERにアクセスするプログラムで、EWS上でlsした結果などを
PCに表示しようとするものです。
AsyncSocketクラスを継承したCSockクラスを作成し、CSock.ConectSock関数を用いて
EWSにアクセスしようとしています。ポート21番(FTP送信ポート)を接続してFTPサーバ
からのメッセージを受信するところまではうまく行きましたが、ポート20番(FTP受信用
ポート)からデータを受け取るために21番ポートと同時に20番ポートを接続しようとす
ると、プログラムが落ちてしまいます。
(具体的にはCSock.ConnectSock関数を続けて2回呼ぶようにした)
同時に複数のポートを接続しようとするとき、何らかのお作法が必要なのでしょうか。

質問内容がまとまってなくて、読みづらいかもしれませんが、どなたか知識をお持ちの方が
いらっしゃいましたらお知恵を貸して頂けますでしょうか。


引用未解決
トピックタグ
いば
 いば
(@いば)
ゲスト
結合: 23年前
投稿: 2
Topic starter  

自己解決いたしました。

CSock.Create();
CSock.ConnectSock(20);
CSock.Create();
CSock.ConnectSock(21);

とやったら落ちて、

CSock.Create();
CSock.ConnectSock(20);
CSock.ConnectSock(21);

とやったらOKでした。
一度コネクションを確立したら、
どしどしポートを接続しても
良いみたいです。
もし間違っていたらご指摘ください。
宜しくお願いします。
お騒がせしました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました