So:
Empfänger
Delphi-Quellcode:
const
MY_MESSAGE = WM_USER+1974;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
procedure ReceiveMyMsg(var msg: TMessage); message MY_MESSAGE;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ReceiveMyMsg(var msg: TMessage);
begin
ShowMessage('Angekommen.');
end;
Sender:
Delphi-Quellcode:
const
MY_MESSAGE = WM_USER+1974;
procedure TForm1.Button1Click(Sender: TObject);
var
hWnd: THandle;
begin
hWnd := FindWindow(nil, 'Form1');
if hWnd <> 0 then
SendMessage(hWnd, MY_MESSAGE, 0, 0)
else
RaiseLastOSError();
end;
Hier:
procedure ReceiveMyMsg(var msg: TMessage); message MY_MESSAGE;
sagst du ihm auf welche Nachricht er warten / reagieren soll.
Hier:
Delphi-Quellcode:
procedure TForm1.ReceiveMyMsg(var msg: TMessage);
begin
ShowMessage('Angekommen.');
end;
die dazugehörige Prozedur.
Und hier:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
hWnd: THandle;
begin
hWnd := FindWindow(nil, 'Form1');
if hWnd <> 0 then
SendMessage(hWnd, MY_MESSAGE, 0, 0)
else
RaiseLastOSError();
end;
Schickst du die Nachricht an dein Fenster. Über die Parameter kannst du sogar noch Infos mitgeben.