Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.151 Beiträge
 
Delphi 12 Athens
 
#2

AW: Nachricht global ausfiltern, noch vor dem Start des Hauptprogrammes

  Alt 27. Jun 2016, 16:48
Ja, der Erfinder von TApplicationEvents sollte dafür erschossen werden.
Da erfindet der etwas, damit es keine Konflikte mehr gibt und dann produziert das Ding selber Konflikte mit Altcode.


1, 4: Application.OnMessage wird doch vor der Verarbeitung (IsPreProcessMessage/IsHintMsg/IsMDIMsg/IsKeyMsg/IsDlgMsg und TranslateMessage/DispatchMessage) ausgeführt.
Also einfach in Application.OnMessage Handled:=True und/oder Msg.message := WM_NULL; ,
aber ein Blick in TApplication.ProcessMessage zeigt, dass nachher dennoch einige Messages verarbeitet werden, selbst wenn Handled=True.

2: Rausfinden was Msg.Wnd ist und dessen WndProc hooken.

3: Du mußt GetMessage/PeekMessage (WH_GETMESSAGE) hooken und nicht DispatchMessage (WH_CALLWNDPROC).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (27. Jun 2016 um 17:02 Uhr)
  Mit Zitat antworten Zitat