Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Komponente mit PostMessage TService-tauglich machen

  Alt 10. Apr 2024, 20:30
Was für ein Handle?
Warum nicht TWinControl, wenn es ein Handle HWND verwaltet?

Also Server kann er sich aber kein WindowHandle holen (wenn's nicht stimmt bitte korrigiert mich).
Ich sag es mal so, der Windows-Service baut intern auf der VCL auf.

Doch, Messages in Threads gehen, wenn jemand (DU) die Messages auch verarbeitet. (GetMessage bzw. PeekMessage)
Handle/HWND müssen auch in dem Thread erstellt (CreateWindow) werden, wo sie verarbeitet werden sollen.

Beim ersten Aufruf einer Message-Funktion (z.B. CreateWindow/GetMessage/PeekMessage) wird automatisch eine MessageQueue für diesen Thread erzeugt.

Und PostThreadMessage sendet direkt an den Thread, nicht an ein WinControl, also wird es auch vom keinem WinControl/WndProc empfangen/verarbeitet.
DU mußt es also in deiner Message-Verarbeitung (GetMessage bzw. PeekMessage) deine Message abfangen und verarbeiten. (in der VCL kann man sich auch an Application.OnMessage TApplicationEvents.OnMessage hängen)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat