Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   laufenden Prozess auf lokalem Rechner fernsteuern? (https://www.delphipraxis.net/147123-laufenden-prozess-auf-lokalem-rechner-fernsteuern.html)

DualCoreCpu 2. Feb 2010 08:40


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?

Astat 2. Feb 2010 09:00

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 10:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz