Einzelnen Beitrag anzeigen

Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#1

Eigene Anwendung per COM fernsteuern - Wie vorgehen?

  Alt 28. Sep 2011, 17:00
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
  Mit Zitat antworten Zitat