Sendmessage kommt nicht an

Sendmessage kommt nicht an

Beitragvon malabarista » 10. Jan 2018, 12:01 Sendmessage kommt nicht an

Ich versuche aus einer eigenen DLL mittels Sendmessage eine Nachricht an das Hauptprogramm zu senden.
Code: Alles auswählen
 
       SendMessage(hApp, WM_USER + 1, 65, 0);
 

Die kommt aber im Hauptprogramm nicht an.

Code: Alles auswählen
 
...
  public
    { public declarations }
  procedure DllMessage(var Msg: TMessage); message WM_USER + 1;
....
 


Vermutlich hängt dies mit der Variablen hApp zusammen.
Dieses Handle übergebe ich beim Start des Hauptprogramms an die DLL beim Aufruf:
Code: Alles auswählen
 
  starth(memo.Handle, Handle);
 

memo.Handle funktioniert: das ist das Handle eines Memo-Feldes auf dem Hauptformular und aus der DLL kann ich direkt dorthinein schreiben.
Aber die Variable Handle scheint falsch zu sein. Wie müsste sie richtig lauten ?
malabarista
 
Beiträge: 277
Registriert: 11. Jun 2016, 11:16
Wohnort: Konstanz
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0 | 
CPU-Target: 64Bit
Nach oben

Beitragvon marcov » 10. Jan 2018, 12:11 Re: Sendmessage kommt nicht an

Es soll die Formhandle sein der den Handler hat.
marcov
 
Beiträge: 1030
Registriert: 5. Aug 2008, 08:37
Wohnort: Eindhoven (Niederlande)
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk) | 
CPU-Target: 32/64,PPC(+64), ARM
Nach oben

Beitragvon mschnell » 10. Jan 2018, 12:26 Re: Sendmessage kommt nicht an

malabarista hat geschrieben:Ich versuche aus einer eigenen DLL mittels Sendmessage eine Nachricht an das Hauptprogramm zu senden.

Warum ?
Innerhalb eines Programms (die DLL ist ja nur dynamisch angelinkt, aber zur Laufzeit Teil des Programms) gibt es da Lazarus/Delphi-interne Möglichkeiten statt Windows-Spezialitäten zu benutzen.

z.B. um den MainThrfead zu signalisieren: TThread.Queue.

-Michael
mschnell
 
Beiträge: 3215
Registriert: 11. Sep 2006, 09:24
Wohnort: Krefeld
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ) | 
CPU-Target: X32 / X64 / ARMv5
Nach oben

• Themenende •

Zurück zu Windows



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

cron
porpoises-institution
accuracy-worried