Seite 1 von 1
PB-Programm soll per SendMessage angesprochen werden können
Verfasst: 11.04.2007 23:28
von Delle
Hallo,
ein PB-Program läuft und ein anderes Programm (C++) soll von diesen Programm Daten abrufen.
Das C-Programm sendet dann sicher auch mittels API und SendMessage eine Anfrage an das PB-Programm (durch Fensterhandle ermittelt)...
Was muss ich nun im PB-Programm einbauen, damit es auf eingehende Anfragen antwortet? Ein Callback ist klar... und weiter?
Verfasst: 12.04.2007 09:09
von Tafkadasom2k5
Heyho!
Du hast geschrieben, dass das C-Programm "sicher" auch was sendet- woher weißt du das?
WENN du das weißt, dann braucht man auf jeden Fall einmal die Werte- noch besser den Sendmessagebefehl aus dem C-Source, um daraus eine Empfangsschleife zu basteln.
Ansonsten solltest du die Werte, die in lParam/wParam drinstehen einfach auslesen.
Normalerweise ist das ja so:
In wMSG steht die Nachricht drinne (wie ist diese Nachricht? Normalerweise ist sie #WM_USER+X). Da könnte dann drinstehen "#DLL_WINDOW_MOVED".
Jetzt liest du (je nach Werteübergabe des C-Programmes) den wParam und den lParam aus, und hast dann ide X/Y Koordinate.
So läuft das vom Prinzip her.
Aber mehr, sobald du mich aufgeklärt hast
Gr33tz
Tafkadasom2k5
Verfasst: 12.04.2007 14:17
von ts-soft
Wenn 2 Programme sich per Send- PostMessage was zu sagen haben, so
sollte man eine Message registrieren:
http://msdn2.microsoft.com/en-us/library/ms644947.aspx
Einfach nur #WM_USER + x sollte besser nur innerhalb eines Processes
benutzt werden (z,B. Controls in DLLs usw.)
Verfasst: 12.04.2007 15:21
von Tafkadasom2k5
Und was für einen String muss man da beispielsweise jetzt hinschicken?
Ich hab das nur mal innerhalb eines Programmes gemacht, dass ich mehrere Fenster habe so kommunizieren lassen.
(Es war eine Include, und damit habe ich mir viel Gefrickel erspart)
Verfasst: 12.04.2007 16:01
von ts-soft
Tafkadasom2k5 hat geschrieben:Und was für einen String muss man da beispielsweise jetzt hinschicken?
Tafkadasom2k5 hat geschrieben:
Ich hab das nur mal innerhalb eines Programmes gemacht, dass ich mehrere Fenster habe so kommunizieren lassen.
(Es war eine Include, und damit habe ich mir viel Gefrickel erspart)
Innerhalb eines Programmes (Processes) ist das ja auch richtig, aber nicht
über verschiedene Processe