Unit1;


  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

  TForm1 = (TForm)
    Button1: TButton;
    Edit1: TEdit;
     Button1Click(Sender: TObject);
  ;

  Form1: TForm1;


 TForm1.Button1Click(Sender: TObject);

  h: HWND;
  Size: Integer;
  CopyDataStruct: TCopyDataStruct;

  h := FindWindow(, ); 
   h >  
  
    Size := ByteLength(Edit1.Text) + ;   
    CopyDataStruct.lpData := PChar(Edit1.Text + ); 
    CopyDataStruct.dwData := WM_COPYDATA;            
    CopyDataStruct.cbData := Size;                   
    SendMessage(h, WM_COPYDATA, , Integer(@CopyDataStruct)); 
  ;
;
.

接收代码:
 
  
 Unit1;


  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

  TForm1 = (TForm)
    Memo1: TMemo;
     FormCreate(Sender: TObject);
  
  
     WMCopyData( Message: TWMCopyData);  WM_COPYDATA;
  
  ;

  Form1: TForm1;


 TForm1.FormCreate(Sender: TObject);

  Caption := ;
;
 TForm1.WMCopyData( Message: TWMCopyData);

  Memo1.Lines.Add(PChar(Message.CopyDataStruct.lpData));
;
.

该代码已在 Delphi 2010 下测试过了.

发现 skymesh 朋友对消息操作不是太熟, 顺便告知个小技巧(其实博客中可能早提到过):
在 TForm1 = class(TForm) ... end; 中执行 Ctrl+空格;
然后输入: wm...(譬如本例输入 wmcopyd 即可) 后回车;
接着执行 Ctrl+Shift+C, 会自动完成上面大部分的消息代码.