掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
COMMXでバイナリ受信 (ID:38271)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
Shortint(2byte)、LongInt(4byte)、Double(4byte)、文字列(長さDATA付き)などの異なる型のデータがメモリ上に順に並んでいる場合に、そこから各データの値を取り出すには Streamを使うのが簡単で便利。 type TMemoryStream = class(Classes.TMemoryStream); var a: Shortint; b: LongInt; c: Double; ..... begin ReadSize := CommX.ReceiveBlock(Buf, MaxSize); ms := TMemoryStream.Create; ms.SetPointer(Buf, ReadSize); // 以下、並び順にデータを取り出す ms.Read(a, Sizeof(Shortint)); ms.Read(b, Sizeof(Longint)); ms.Read(c, Sizeof(Double)); ....... ms.Free; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.