【Excel(64bit) VBA】【Winsock API】【UDPクライアント&サーバー】サンプル 最新化

以前作成したUDPクライアント、サーバサンプルを最新化

以前のサンプルでもまだ動くが、ソース量が多く、先人のコピペによる力が大きかったので、全体を見直した。

今回の見直しを通して得た知識は特に以下3つ

  • WSAGetLastErrorでは、エラーを拾えない。VBAのERRオブジェクト LastDllError から取得する。
  • char * にString型で引数を与える場合は、ByvalとしてAPIを宣言する。
  • non-brokingモードであれば、例えば同一シート上にUDPRecvFromとUDPSendToをボタンを設定、各々のボタンをクリックすることでUDP通信ができる。つまり1Excel上で送信と受信のデバッグ(テスト)ができる。

以下、サンプルソースコード

UDPRecvFrom  を実行後 UDPSendTo を実行すると、UDP通信が確認できる。

コメント

タイトルとURLをコピーしました