给你一个简单的消息通讯的例子: 主程序(Hr.exe) unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; type TForm1 = class(TForm) procedure FormShortCut(var Msg: TWMKey; var Handled: Boolean); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormShortCut(var Msg: TWMKey; var Handled: Boolean); begin if Msg.CharCode = VK_CONTROL then SendMessage(FindWindow(nil,'Form2'), WM_APP+1, 0,0); end; end. 更新程序AutoUpdate.exe: unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) private { Private declarations } public procedure WndProc(var Msg: TMessage); override; { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.WndProc(var Msg: TMessage); begin with Msg do begin if Msg = WM_APP + 1 then Form1.Caption := 'gggggg'; end; inherited; end; end.