Hallo, ich habe ein Programm, das von einem anderen - mit Hilfe einiger Befehle gesteuert werden soll. Ich hab' das erstmal provisorisch mit PostMessage gelöst:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm.PControlMessage(var msg: tagMSG; var Handled: Boolean); begin if (msg.Message = WM_PAINT) then if (msg.LParam = 1) then ShowMessage('Aktion'); end;
procedure TForm.FormCreate(Sender: TObject); begin Application.OnMessage := PControlMessage; end; |
Wenn jetzt das andere Programm
PostMessage(FindWindow(nil,'MeinProgramm'),WM_PAINT,0,1); "aufruft", wird die gewünschte Aktion ausgeführt. Nur eigendlich ist
WM_PAINT nicht dafür gedacht. Gibt es eine Message, die keine Aktion bewirkt sondern nur Parameter übermittelt oder sollte man das ganz anders machen?