[マスタ側]
BYTE Srbuf[100]; //受信バッファ
Cmd[0] = 2; //リスナの数+1(ここではリスナは1台)
Cmd[1] = TalkerAdrs; //データを送信する機器アドレス
Cmd[2] = ListenerAdrs; //データを受信する機器アドレス(自分自身のアドレス)
Ret = GpListen(Cmd, &Srlen, Srbuf); //Srlen = データの長さ:Srbuf = データが格納されているバッファ
[スレーブ側]
BYTE Srbuf[100]; //受信バッファ
Cmd[0] = 0; //マルチラインメッセージは指定できないのでこのように記述します。
Ret = GpListen(Cmd, &Srlen, Srbuf); //Srlen = データの長さ:Srbuf = データが格納されているバッファ
説明:受信するプログラムは送信する部分とほとんど同じです。使う関数はGpListen関数を使用します。注意点も同じでSrlenの値はSrbufに代入したデータ数を超えてはいけません。しかし受信ではSrbufの大きさを必ず指定しておかなければなりません。尚、CheckRet関数はエラーをわかりやすくするために別に関数を作成してあります。 これは標準モジュールといわれるものにコードが書かれています。この関数を標準モジュールとすることにより、汎用性を持たせてあります。もしこの関数を他のプログラムにもって使用するのであれば、ファイルの追加で使用可能となります。(CheckRet関数のコードは「SubFunc.cpp」に入っています。)
これで受信での作業は終わりです。