Hallo!
Mein Ziel ist es eine eigene Anwendung von einem anderen, eigenen Programm aus fernsteuern zu können. Konkret geht es um ein
FTP Programm, dass von einem anderen Programm die Nachricht erhalten soll eine Datei von Pfad X auf Server Y zu laden.
Hierfür habe ich mich mit
COM beschäftigt und schon eine ganze Zeit mit Testprojekten experimentiert. Mit den Begriffen von
COM wäre das
FTP Programm der Automatisierungs-Server der seine Funktionen über
COM zugänglich macht. Das andere Programm wäre der zugehörige Client der auf diese Funktionen zugreift.
Ich habe es soweit geschafft einen Server und einen Client zu erstellen. Der Server ist ein Anwendung (also keine
DLL, Ouf-Of-Process und nicht In-Process) mit einem Form und einem Memo darauf. Das Server-Objekt stellt die Methode Post zur Verfügung, die einen empfangenen Text ins Memo schreibt. Das Ganze klappt ganz gut: Starte ich den Client wird eine Instanz des
COM-Objectes erstellt und eine Post-Nachricht gesendet. Das Server-Programm erscheint und die Meldung wird korrekt in das Memo geschrieben.
Soweit so gut. Starte ich allerdings mehrere Instanzen des Clients starten diese auch jeweils eine eigene Instanz des Servers. Das Server-Fenster erscheint also mehrfach und jeder Client posted in seinem eigenen Server.
Mein Ziel wäre aber folgendes:
Der Server kann nur einmal gestartet werden. Greift der Client auf den Server zu wird zunächst geprüft ob dieser läuft und ggf. gestartet. Laufen mehrere Clients werden deren Nachrichten alle im gleichen Server geposted.
Leider ist es mich noch nicht gelungen dies mit
COM umzusetzen. Ist dies überhaupt möglich? Wie müsste ich in diesem Fall vorgehen?
Geeignete Tutorials in dieser Richtung habe ich leider nicht gefunden. Diese beziehen sich immer nur auf die Automtatisierung anderer Programme wie z.B. Word oder Excel.
Ich bin für jeden Tipp Dankbar!
Ares