![]() |
Status einer Anwendung prüfen
Hallo Leute
ich hab mal eine Frage zu einem Beitrag von Luckie in der Code Libary ![]() also folgendes das ganze funktioniert einwandfrei THX so far ich habe aber ein Problem : und zwar rufe ich eine Anwendung mit ShellExecute(Application.Handle, 'open' ,PChar('InoDist.exe'), PChar('/cfg InoDist.ini'), PChar(DateiPfad), sw_ShowNormal); auf das ganze funktioniert jedoch schliesst diese Anwendung automatisch also ohne Einwirken des Users genau da liegt das Problem
Code:
in dieser Schleife wird ja permanent der Handle abgefragt jedoch führt das Automatische Schliessen nicht zu einer veränderung !!! erst wenn eine Aktion des users durchgeführt wird (mausklick etc...) wird der Handle aktualisiert und die Schleife gibt hProcess = 0 true aus
while bClose = False do
begin hProcess := GetProcessHandleFromID(GetProcessID('notepad.exe')); if hProcess = 0 then Label1.Caption := 'Notepad läuft nicht' else Label1.Caption := 'Notepad läuft'; Application.HandleMessage; end; Zum Hintergrund : ich habe vor das Virensignatur-Update von eTrust 7.0 zu automatisieren. Mein Programm öffnet die 'InoDist.exe' automatisch wird eine DFÜ Verb hergestellt und 'InoDist.exe' prüft ob es updates gibt und lädt diese herunter. wenn das Programm fertig ist schliesst es sich selbst und das wollte ich mit Luckies Prozedur im Hintergrund abfangen, damit ich die DFÜ Verbindung trennen kann Ziel : kosten bei Kunden sparen die noch per ISDN ins netz gehen Gibt es vielleicht zusätzlich / alternativ die möglichkeit die ProcessID abzufragen ??? (provisorisch mache ich es mit einem simulierten Mausklick wobei dann hProcess = 0 true ausgibt ist aber nicht so wirklich das gelbe vom ei) mfG TeeKay |
Re: Status einer Anwendung prüfen
|
Re: Status einer Anwendung prüfen
Moin Teekay,
ich denke mal, dass für Deine Anforderung der Aufruf mit ![]() ![]() |
Re: Status einer Anwendung prüfen
Danke euch beiden
scheinbar war es für meine Anforderungen ausreichend mit ShellExecuteEx zu arbeiten das Beispiel : Zitat:
die angesprochene Funktion passt wunderbar, übergibt parameter und erzeugt ein zuverlässiges ergebnis thx 4 that mfG TeeKay p.s.Luckie's Beispiel kann ich dennoch empfehlen (funzt ohne zu ruckeln :P ) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 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