Thema: IsConsole?

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
40.088 Beiträge
 
Delphi 11 Alexandria
 
#1

IsConsole?

  Alt 20. Mär 2016, 21:49
Moin, gibt es eigentlich ein einfaches Zeichen, oder gar eine API, mit der man prüfen kann, ob ein aktiver Prozess eine Konsolenanwendung ist?
Vorgehen: CreateProcess WaitForInputIdle WaitForSingleObject CloseHandle

WaitForInputIdle meint WAIT_FAILED, aber passiert das nur, wenn es keine GUI-Anwendung ist, es also kein "INPUT", bzw. keine MessageQueue gibt?

Der FileHeader sagt ja auch nichts aus, also ob nicht doch eine GUI erzeugt wird,
oder ob das einfach nur eine "unsichtbare" Konsolenanwendung ist. (als GUI markiert, damit kein Konsolenfenster auf geht, aber dennoch ohne GUI)



Auch das Problem den Prozess zu beenden, wäre hier zu lösen, denn je nach Typ wäre das Vorgehen ja etwas Anders.
OK, MSDN-Library durchsuchenTerminateProcess geht immer, aber man muß es ja nicht übertreiben.
Also einfach nur ein WM_QUIT/WM_CLOSE für GUI, bzw. Ctrl+C/Ctrl+Break bei der Console, aber das Problem hab ich wohl gelöst. (noch ungetestet)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014
  Mit Zitat antworten Zitat