消息的困惑,看看也给分
wlq 2000-04-17 10:37:00 代码如下,form2发送消息,form1接收,奇怪的是发送字符串长度超过4
就收不到lparam参数
form2发送:
procedure TForm2.trans1Click(Sender: TObject);
var pp:pchar;
buffer:pointer;
ss:string;
ii:integer;
begin
ii:=length(form2.edit1.text);//长度
ss:=form2.Edit1.Text;过 //内容
pp:=pchar(ss);
buffer:=pointer(localalloc(LPTR,sizeof(pp)+1));
move(pp^,buffer^,sizeof(pp));
postmessage(form1.handle,wm_mymsg,wparam(ii),lparam(buffer));
end;
form1接收:
k:=pchar(msg.lparam);
j:=dword(msg.WParam);
form1.Edit1.Text:=inttostr(j);//长度
form1.Edit2.Text:=k; //内容
只有发送的 长度<=4才是正常的
不知是为什么?