![]() |
zweites Delphi Programm mit anderem Delphi Programm steuern
Hallo, ich such ne Möglichkeit in einem zweiten Delphi Programm einen Button zu drücken, wo das Button.Click Ereignis über einen timer von einen anderen Delphi Programm kommt.
Kann mir da jemand einen Tipp geben, wie ich das mache: Vielen Dank |
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Das lässt sich mit COM/ActiveX Automatisierung bewerkstelligen.
Ich befürchte nur dass du programmiertechnisch noch nicht soweit bist. Der Lernaufwand beträgt einige Wochen bis Monate. ![]() |
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Oder mit
![]() |
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
|
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Mir fällt da spontan eine Broadcast-Message ein, die in der WndProc der fernzusteuernden Anwendung ausgefiltert wird.
|
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Du hast doch den Quelltext und somit die volle Kontrolle über beide Anwendungen, oder? Im Endeffekt müssen deine zwei Prozesse nur miteinander kommunizieren. Und unter Windows gibt es mehr als ein halbes Dutzend verschiedene Möglichkeiten der "Inter-Prozess-Kommunikation".
Also anstatt dass dein Prozess B mühsam anfängt, im Prozess A zu wühlen, einen bestimmten Button in seinem Fenster zu suchen und den zu drücken, sollte es dem Prozess einfach sagen "He, dein Button soll gedrückt werden" und Prozess A drückt dann selber. |
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Zitat:
Mein Hauptproblem ist eigentlich, dass ich in beiden Programmen etwas Timer-gesteuertes ablaufen lasse. Nur über einen langen Zeitraum (24h wobei jedes Ereignis ungefähr alle 60sec ausgeführt wird) laufen die beiden Timer dann irgendwann asynchron. Ich dachte zuerst ich starte das zweite Programm mit dem Timer vom ersten, oder habt Ihr da noch ne andere Idee, wie ich die synchronisiert bekomme, an die Windows Uhr koppeln oder sowas? Danke für eure Hilfe |
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Wäre es denkbar, den Timer nur in einer der beiden Anwendungen zu verwenden und der anderen über eine Message mitzuteilen, dass das Timer-Ereignis eingetreten ist?
|
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Zitat:
|
AW: zweites Delphi Programm mit anderem Delphi Programm steuern
Gut, dann skizzier ich mal grob: Du brauchst eine selbst definierte Message, die beiden Anwendungen bekannt ist (RegisterWindowMessage kann da hilfreich sein). Der Empfänger braucht dann noch einen Handler für diese Message. Tritt nun im Sender das Timer-Ereignis ein, schickt er eben die Message an den Empfänger (dessen Fensterhandle muss im Sender bekannt sein), welcher darauf reagiert oder eben auch nicht.
[edit] Einen ersten Ansatz für den Austausch der Fensterhandles kannst Du hier finden: ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:55 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 by Thomas Breitkreuz