Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Message von anderem Programm empfangen unter Win2k (https://www.delphipraxis.net/133836-message-von-anderem-programm-empfangen-unter-win2k.html)

J Kadison 10. Mai 2009 11:25


Message von anderem Programm empfangen unter Win2k
 
Hallo!

Ich habe folgendes problem:

Ich habe 2 Programme die miteinander über WM_COMMAND kommunizieren.
Jetzt möchte ich eines der Programme durch ein eigenes ersetzen. Das Problem allerdings ist, ich weiß nicht nach welchen Kriterien das 2. Programm die Messages versendet. --> ich weiß nicht, wie ich mein Programm einstellen muss, damit die Messages auch bei mir ankommen. Im moment gehen sie irgendwo in den Tiefen des Rechners verloren.

Also dachte ich mir, Mit einem hook probieren.
Hab das ganze jetzt auch mit einem WH_CALLWNDPROC realisiert und funktioniert auch auf meiner Programmierplattform. Allerdings wenn ich das jetzt auf meinem Zielrehcner starte bekommen ich eine Speicher-zugriffsverletzung. Ich denke mal, da es direkt beim start ist, dass der Fehler bei der Hook-Installation auftritt.


Gibt es irgendwie Möglichkeiten herauszufinden, entweder
- Nach welchen Kriterien das andere Programm die Messages an wen versendet? oder
- Wie kann ich den Hook Win2k kompatibel machen?

jaenicke 11. Mai 2009 02:56

Re: Message von anderem Programm empfangen unter Win2k
 
Ich dachte du willst das zweite Programm ersetzen? Was willst du dann hooken, wenn das zweite Programm gar nicht läuft? :stupid:

Möglichkeiten das Ziel zu bestimmen gibt es einige. FindWindow per Fensternamen, eine global per Namen registrierte Botschaft, ...
Du könntest einfach einmal versuchen den Fenstertitel des Fensters zu benutzen, an den die Botschaften gehen.

J Kadison 11. Mai 2009 06:06

Re: Message von anderem Programm empfangen unter Win2k
 
Hey guten Morgen!

Zitat:

Ich dachte du willst das zweite Programm ersetzen? Was willst du dann hooken, wenn das zweite Programm gar nicht läuft?
Frag mich nicht, warum der das trotzdem sendet und vorallem an wen?! aber ich bekomme immernoch die Nachrichtenstruktur, von den Buttons wie wenn das 2. Programm auch läuft :shock:

Über fenstertitel und auch über den Typ des Forms habe cih es schon versucht, das ganze zu synchronisieren . . . bringt aber nichts :(

Ich sehe, wenn cih meinen Hook an habe, dass die nachricht raus geht (egal ob das 2. Progg läuft oder nicht) aber ich weiß nicht wo sie hin geht ?!? kann das sein, dass sich die programme beim start mit ihrem handle in irgend ne DLL rein schreiben?
wäre sowas möglich?
Wobei, dann wäre das ganze ja spätestens nach nem systemstart wieder beim defaultwert oder?

Ne keine ahnung was könnte denn noch möglich sien???

jaenicke 11. Mai 2009 13:09

Re: Message von anderem Programm empfangen unter Win2k
 
Vielleicht helfen dir Process Explorer oder Process Monitor bei der Analyse des Programms:
http://technet.microsoft.com/de-de/s.../bb896645.aspx


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz