![]() |
laufenden Prozess auf lokalem Rechner fernsteuern?
Hallo!
Ich mach mir grad Gedanken, wie ich einen auf meinem Rechner laufenden Prozess durch ein anderes Programm mittels Kommandos steuern kann. Ich denke mal, auf jeden Fall brauche ich den Handle des zu steuernden Prozesses. Aber wohin sende ich meine Kommandos? Bei einem Konsolenprogramm war es zu DOS Zeiten so, das ab Offset 80Hex die Kommandozeile war. In Pascal gibt es die Prozedur ParamStr(Index), die die Kommandos ausliest. Aber wie mache ich das bei einem bereits laufenden Programm. Ein Konsolenprogramm wird mit Kommandozeilenoptionen gestartet, führt seine Aufgabe aus und wierd wieder beendet. Ich aber will des Programm nicht sofort wieder beenden, sondern von einem zweiten Programm steuern bis ich das steuernde Programm beende. Erst dann darf der zu steuernde Prozess beendet werden. Hab schon mal bissl gestöbert und sowas wie WinExecAndWait gefunden. Nur bei Wait, wie garantiere ich da, das ich in das steuernde Programm komme, wenn das gesteuerte ein Konsolenprogramm ist? Das zu steuernde Programm wurde nicht in Delphi geschrieben. Es kann maximal um ein IInterface erweitert werden. Wer kann mir passende Tipps zur optimalen Lösung geben? |
Re: laufenden Prozess auf lokalem Rechner fernsteuern?
Hallo DualCoreCpu.
Für soetwas brauchst Du eine definierte Schnittstelle, auch API-Hooking wäre denkbar. Definierte Schnittstelle: Pipes mit stdin stdout (bei Konsolenanwendungen) Sonstiges IPC mit COM, DCOM, Windows Messages, Sockets, Slots usw. Ohne Hooking, muss die verwendete Schnittstelle(n), natürlich Deine Befehle unterstützen. lg. Astat |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:43 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