ConnectNetWork

他マシンに接続する

val = ConnectNetWork(IPData)

IPDATA IPData : 接続先マシンのIPアドレスデータ
int Port : 通信に使用するポート番号

(プラグイン / モジュール : DxLibW)

解説

LANやインターネット等で繋がっている他のマシンと通信状態を確立します。

当たり前ですが、相手と自分がともにインターネットをしていないと接続を確立することは出来ません。
(LANなら相手のマシンと繋がっていないとだめです)

接続先のマシンはIPアドレスを使って指定します。
IPアドレスとはネットワーク環境に接続しているマシンすべてに割り当てられる電話番号みたいなもので、
電話回線を使ったネット環境ではインターネットをする度にIPアドレスは変動します。(LANなら固定です)

ですのでまず接続したい相手のマシンのIPアドレスを知る必要がありますが、
相手のマシンのIPアドレスを自分で調べることは出来ないので、
接続したい相手の方に自分のマシンのIPアドレスを調べてもらう必要があります。


調べ方はインターネットネットワークの場合は調べるためのソフトなどがフリーソフトとして公開されていますのでそれを使って調べます。


LANの場合はコントロールパネルのネットワークを開いて、
リストの中のTCP/IPをダブルクリックすればそこにIPアドレスが載っています。

ちなみにIPアドレスとは以下のようなものです

IPアドレスの例    192.168.5.226

4つの数値が『.』で区切られている、という形であらわされます。

次に相手のマシンは接続されるのを待つ状態にしなくてはなりません、
接続を待つ状態にするには PreparationListenNetWork関数を実行ます、
この関数は引数のないただ実行するだけの関数です。

さて、IPアドレスがわかり、相手のマシンが接続を待つ状態になったらいよいよ
ConnectNetWork 関数で相手に接続することが出来ます。

接続には接続先のマシンのIPアドレスと通信に使用するポート番号をDXライブラリの構造体の IPDATA 構造体を使って指定します。
IPDATA 構造体の中には以下のデータが入っています。


{

unsigned char d1 ;

unsigned char d2 ;

unsigned char d3 ;

unsigned char d4 ;

}

1バイトデータ型である unsigned char 型の変数が4つ、ピンときた方もいると思いますが、
そうです、IPアドレスが『 192.168.5.226 』だった場合 IPDATA 構造体には以下のようにデータを代入します。

例

IPDATA ip ;

ip.d1 = 192 ;

ip.d2 = 168 ;

ip.d3 = 5 ;

ip.d4 = 226 ;

おわかりいただけたでしょうか?要はIPアドレスの左から順にd1.d2.d3.d4に対応しているのです。
こうして代入したIPデータを ConnectNetWork関数に渡します。

もう一つの引数 Port ですが、こちらは通信に使用するポート番号です、
ポート番号は 0 から 65535 までの値を指定することができますが、
メール送受信用に使われている番号( 465 )やWebサイトの情報の送受信に使用されている番号( 80 )など、
使用すると他のソフトの挙動に支障をきたす番号が沢山ありますので、
使用しても問題ない番号はインターネットで調べてみてください。

これで接続が成功したらネットワークハンドルが返ってきます。
ネットワークハンドルとは int 型の識別番号値で、データを送信するときや、
通信を終了するときなどに相手のマシンを決定するときに使いますので保存しておいてください。
接続に失敗したら-1が返ります。(ハンドルは0以上の数値です)

接続が終わったらこちらは接続されたかすぐわかりますが、相手のマシンは
接続されたことを知りませんので、接続を待っているマシンは一定周期で
GetNewAcceptNetWork関数 を使って誰かが接続してきたか調べる必要が
あります。

接続が完了したら後はデータを送信したり、受信したりするだけです。
それらについてはそれぞれの関数の解説を参照してください。

戻り値:
  0以上:確立した接続を示すネットワークハンドル(int型の識別値)

情報

プラグイン / モジュールDxLibW
バージョン3.24f
作成日2026/04/12
著作者DxLib: Takumi Yamada / HSP binding: IronHSP Project
URLhttps://dxlib.xsrv.jp/
備考hspdxlib.as をインクルードして使用
タイプDxLib ゲームライブラリ
グループDxLib 通信
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\hspdxlib.hs