Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.156 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: ShellExecuteEx + TerminateProcess

  Alt 22. Apr 2021, 13:43
Der Doku "How Processes are Terminated" nach:
Zitat:
(...)
For console processes, the default console control handler calls ExitProcess when the console receives a CTRL+C or CTRL+BREAK signal.
(...)
Da du den Prozess ja über seine eigene, neue Konsole laufen lässt ist wahrscheinlich der einfachste Weg, die Anwendung in einem Job laufen zu lassen und diesen dann notfalls zu beenden.


Wenn ich das allerdings anmerken darf, das ganze erscheint trotzdem etwas Quick & Dirty. Bist du sicher, dass beispielsweise der Umweg über Dateien auf der Festplatte notwendig ist? Das tolle an Konsolenanwendungen ist eigentlich dass du die direkt aus deiner Delphi-Anwendung über Pipes (StdIn, StdOut, StdErr) auslesen und füttern kannst wie der Mensch der das schwarze Konsolenfenster mit der Tastatur bedient.

PS: Ja, dass es mit Jobs zu funktioniert bestätigt hier jemand. Trotzdem hätte ich gesagt dass der jetzige Ansatz wirklich nicht optimal ist.
  Mit Zitat antworten Zitat