procedure TMainForm.Comm1ReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word);
var
rbuf:array of byte;
i:integer;
msg:string;
begin
SetLength(rbuf,BufferLength);
move(Buffer^,pchar(@rbuf)^,BufferLength);
for i:=1 to BufferLength-1 do
msg:=msg+inttohex(rbuf[i],2); //这里为什么出错阿
showmessage(msg);
end;
var
rbuf:array of byte;
i:integer;
msg:string;
begin
SetLength(rbuf,BufferLength);
move(Buffer^,pchar(@rbuf)^,BufferLength);
for i:=1 to BufferLength-1 do
msg:=msg+inttohex(rbuf[i],2); //这里为什么出错阿
showmessage(msg);
end;
解决方案 »
- 在windows7上使用delphi7的问题?
- 奇怪的想法:create后,怎样在类内部把对象实例变量置为nil?
- 请教两个exe文件怎么通过一个dll进行数据的交换。
- 关于WindowsMediaPlayer 急!!!!!!!
- 外包项目
- 急死啦!为什么总是需要先登录一次服务器后才能连接到SQL Server?
- DBGridEh控件在哪里的,我怎么找不到呀
- 窗口刷新的老问题,在线等待,解决马上给分……
- 100分求:网上即时语音传输源代码,有说明解释最好!
- 这句话里面的 WHILE (Port[$1f7] <> $50) DO ; port是什么函数?我怎么找不到?
- 用DBExpress连接SQL SERVER时,SQLConnection连接成功,但commandtext却没有table和field列表?
- 关于焦点转换的问题。
move(Buffer^,rbuf[0],BufferLength);
// ~~~~~~~
for i:=0 to BufferLength-1 do
// ~~
msg:=msg+inttohex(rbuf[i],2); //这里为什么出错阿
showmessage(msg);
procedure TMainForm.Comm1ReceiveData(Sender: TObject; Buffer: Pointer; BufferLength: Word);
var
rbuf:array of byte;
i:integer;
msg:string;
begin
SetLength(rbuf,BufferLength);
move(Buffer^,pchar(@rbuf)^,BufferLength);
for i:=1 to BufferLength-1 do
msg:=msg+Pchar(inttohex(rbuf[i],2));
showmessage(msg);
end;