an welcher Stelle versuchst du auf die Message zu reagieren? Versuchst du auf die Message an das Form zu reagieren oder versuchst du auf die Message an die eigentliche Application zu reagieren?
Bei der Application bzw. bei der Form selbst kommt keine Message an.
In der eigentlichen Warteschleife aus dem oberen Eintrag kommt nur ein wm_paint beim Aktivieren des rufenden Programms.
Entweder bleiben alle anderen Meldungen schon im Delphi hängen oder das Fenster zeichnet sich als einzige Reaktion nur neu.
Den Focus kann es ja nicht bekommen, da es in einer "harten" Warteschleife hängt.
Delphi-Quellcode:
if ret = (WAIT_OBJECT_0 + 1) then
begin
while PeekMessage(Msg, 0, WM_PAINT, WM_PAINT, PM_REMOVE) do
begin
if msg.Message = wm_Paint then messagebeep(1); <<<<<<<<<<<<
DispatchMessage(Msg);
end;
An lbccaleb
Ja das Problem tritt auch bei anderen Aktivierungen auf (Taskmanager, Alt-Tab). Ich wollte nur das Problem nicht unnötig komplizieren.
Gruß
Peter