• 締切済み

ソケットで通信できない

Solaris + C で作成したプログラムAと、 PC上のVBで作成されたアプリBとの通信を行おうとしていま。 PC側のVBで、 Winsock.LocalPort = 3000 Winsock.Listen の処理があります。 Aではソケットの生成(socket)→接続(connest)→書込み(write)を行っていますが、すべて成功している模様です。 ・・が、VB側のWinsock_DataArrivaでブレークしていても、一向に受信する気配がありません。 VB及びソケットに関して、ほとんど知識がないので上記処理であっているかも分かっていません。 解決策をご存知の方がおられましたら、ご教授願いたく。

みんなの回答

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

> Winsock.LocalPort = 3000 > Winsock.Listen > の処理があります Winsock.Acceptの処理は? ポート決め→リスン→(接続要求があれば)アクセプト→送受信→クローズ というのが一般的な流れだ。アクセプトの処理が無ければ当然サーバ側はDataArrivalにが来ない。 できればもう少しVB側のWinsock処理を明確に説明すべきだろう。何をやって「何をやってない」のか。

mkob
質問者

お礼

回答ありがとうございます。 >できればもう少しVB側のWinsock処理を明確に説明すべきだろう。 言われる通りですが、ほんとに記載した処理しかなかったんですよ。 何をすべきで、何が足らないのかすらわかってませんでした。 頂いた回答をヒントに調べて、なんとか解決しました。 ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A