Hallo!
Wenn ich eine Broadcast-Nachricht verschicke, so kommt die beim Ziel scheinbar mehrmals an (in meinem Fall 4 mal)
Woran liegt das?
Hier ein primitiver Source:
Delphi-Quellcode:
var
Form1: TForm1;
WMBroadTest : Longword;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := OnMessage;
end;
procedure TForm1.OnMessage(var Msg: TMsg; var Handled: Boolean);
begin
if msg.message = WMBroadTest then
Memo1.Lines.Add('Broad!');
Handled := msg.message = WMBroadTest;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
PostMessage(HWND_BROADCAST, WMBroadTest, 0, 0);
end;
initialization
WMBroadTest:=RegisterWindowMessage('BroadTest');
end.
Danke!