Die Architektur ist vom Anwender Vorgegeben. Der Anwender erzeugt exe Files (Consolenanwendungen) die über einen UDP Port ferngesteuert werden können und/oder Ein und Ausgaben über den UDP Port verschicken.
Meine Applikation liegt darüber und bildet die
GUI zu den unterlagerten exe Files. Der Kunde hat schon hunderte solche KonsolenAnwendungen und möchte diese behalten jedoch eine schöne Benutzeroberfläche dazu haben.
Mein Programm etabliert also eine UDP Verbindung zur Konsolenapplikation und wertet deren output aus, dieser wird dann graphisch aufbereitet.
GUI <---> ConsolenApp
wird meine Applikation (
GUI) aber dann durch einen Absturz oder den Taskmanager beendet läuft die ConsolenApp weiter und blockiert weiter den Port.
GUI X---> ConsolenApp
Jetzt kann meine
GUI auch nicht mehr gestartet werden da die ConsolenApp schon läuft. Ich benötige also eine Funktion die mir die Prozess ID von z.B. ConsolenApp.EXE gibt und einer weitere Funktion mit der ich die ConsolenApp.Exe abschiessen kann.
Wenn ich ConsolenApp nämlich über den Taskmanager terminiere dann kann ich auch meine
GUI wieder starten.
Aber danke für den Vorschlag. Würde ich das ganze neu Implementieren dann hätte ich auch eine ganz andere Architektur gewählt soviel steht fest!
Grüße
Andi