掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Indy9のUDPの送受信がうまくいかない (ID:18922)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> IdUDPClient1.SendBuffer(data,1); 送り側(TMemoryStream の使い方)が完全にまちがっていますね。 IdUDPClient1.SendBuffer(data^,1); > data.WriteBuffer(i,1); > IdUDPClient1.SendBuffer(data,1); 送り側のこの部分ですけど位置を元に戻してください data.WriteBuffer(i,1); data.Position := 0; // ←追加 IdUDPClient1.SendBuffer(data,1); TMemoryStream の使い方を理解して使用する場合は 注意してください。うまく動かないときには型と位置の 確認をすることです。 > Data:=TMemoryStream.Create; > Data.CopyFrom(AData,AData.Size); > Data.Position:=0; > Data.ReadBuffer(i,1); > Label1.Caption:=IntToStr(i); > Data.Free; おせっかいですが、無駄なことしてますね わざわざData を作ることも、コピーすることも必要ないかと・・・ AData.Position := 0; AData.ReadBuffer(i, 1); > data:=TMemoryStream.Create; > i:=1; > data.WriteBuffer(i,1); > IdUDPClient1.SendBuffer(data,1); > data.Free; もうひとつおせっかいでしょうが このそーすでは以下ですみそうです。 IdUDPClient1.SendBuffer(i, 1);
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.