我在一个窗口中自定义一个消息。procedure tform2.myownermessage(var msg:tWMmymessage);
begin
  if (msg.Name = 'test')and (msg.Time = 110)  then
   showmessage('收到消息');
end;procedure TForm2.Button1Click(Sender: TObject);
var
  s1:String;
  s:pointer;
begin
  s1 :='test';
  s:=pointer(s1);
  sendmessage(handle,WM_mymessage,Integer(s),110);
end;
这样当button1click时,可以接受到消息。但是我在另外一个窗口发送消息的时候,为什么接受到的消息参数不对??
如下:procedure TForm1.Button1Click(Sender: TObject);
var
  s1:String;
  s:^string;
  Hwd:THandle;
begin
  Hwd:= findwindow('TForm2',nil);
  if Hwd<>0 then
    begin
      s1 :='test';
      getmem(s,length(s1)+1);
      s:=@s1;
      sendmessage(hwd,WM_User+$100,integer(s),110);
    end;
end;Form2可以接受到消息,但是为什么参数s得到的不对,即不是test.
该如何修改??