如何用sendmessage wmcopydata发送一个byte数组?

zhongguofr 2004-11-06 09:08:44
我想用sendmessage wmcopydta的方式发送一个数组的内容,数组是按byte定义的,我想知道如何把这个数组的内容转化成sendmessage里的参数
...全文
207 2 打赏 收藏 举报
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
beyondtkl 2004-11-08
  • 打赏
  • 举报
回复
啊倒 老大出马 偶等拿不到分了。。
王集鹄 2004-11-07
  • 打赏
  • 举报
回复
procedure TForm1.WMCOPYDATA(var Msg: TWMCOPYDATA);
var
vBytes: array[0..15] of Byte;
begin
Move(Msg.CopyDataStruct.lpData^, vBytes[0], Msg.CopyDataStruct.cbData);
ShowMessage(Format('%d,%d', [vBytes[0], vBytes[1]]))
end;

procedure TForm1.Button1Click(Sender: TObject);
var
vCopyDataStruct: TCopyDataStruct;
vBytes: array[0..15] of Byte;
begin
FillChar(vBytes, SizeOf(vBytes), 0);
vBytes[0] := 9;
vBytes[1] := 96;

vCopyDataStruct.dwData := 0;
vCopyDataStruct.cbData := SizeOf(vBytes);
vCopyDataStruct.lpData := @vBytes[0];

SendMessage(Handle, WM_COPYDATA, Handle, Integer(@vCopyDataStruct));
end;
相关推荐
发帖
Windows SDK/API

1177

社区成员

Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
帖子事件
创建了帖子
2004-11-06 09:08
社区公告
暂无公告