Autor Beitrag
Philer
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 79

Win XP Home
D7 Enterprise
BeitragVerfasst: So 09.11.03 07:54 
Also ich möchte ein kleinen Tool proggn, dass, das prozess SeriousEditor.exe schliesst, wenn sie läuft.
Gut mit Zockies Teil hab ich das hingekriegt. Allerdings funktioniert es nur, wenn der o.g. Prozess läuft. Ansonsten kommt ein Fehler.
Ich möchte aber, dass er zuerst Überprüft ob der o.g. Prozess überhaupt läuft, bevor er den Prozess killt.
Mit FindWindow geht es nicht, weil die Anwendung unterschiedliche captions hat. Also wenn ich im SeriousEditor z.b. auf NEU klicke steht in der Caption = Serious Editor - [Untitled.wld], statt nur Serious Editor.
Wie heisst der Code, der Überprüft ob der o.g. Prozess läuft und ein True oder false zurück lässt. Ist das überhaupt möglich? Ich bin halt noch Delphi-Anfänger :wink:

_________________
- Delphi n00b -
-Philer teh thriller-
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 09.11.03 09:54 
Philer hat folgendes geschrieben:
Also ich möchte ein kleinen Tool proggn, dass, das prozess SeriousEditor.exe schliesst, wenn sie läuft.
Gut mit Zockies Teil hab ich das hingekriegt. Allerdings funktioniert es nur, wenn der o.g. Prozess läuft. Ansonsten kommt ein Fehler.
Ich möchte aber, dass er zuerst Überprüft ob der o.g. Prozess überhaupt läuft, bevor er den Prozess killt.

Wenn du 100% sicher sein kannst, dass der Name der EXE nie geändert wird (kann man das? :roll:), dann wäre evtl. ein Suche in: Delphi-Forum, Delphi-Library PROZESS SNAPSHOT etwas für dich, denn damit kannst du den Namen des Programms suchen. Und nur wenn er existiert, killst du den Prozess.

Zitat:
Mit FindWindow geht es nicht, weil die Anwendung unterschiedliche captions hat. Also wenn ich im SeriousEditor z.b. auf NEU klicke steht in der Caption = Serious Editor - [Untitled.wld], statt nur Serious Editor.

Okay, "findwindow" mag nicht gehen. Suche in: Delphi-Forum, Delphi-Library ENUMWINDOWS allerdings schon, weil diese Funktion alle laufenden Fenster der Reihe nach auflistet. Du hättest dann die Möglichkeit, den Text in der Titelleiste zu ermitteln und zu prüfen, ob dort der Begriff "Serious Editor" vorkommt.
Allerdings wäre die bessere Idee, nach dem Klassennamen des Fensters zu suchen. Der ändert sich IMHO nie, auch bei einer deutschen und/oder englischen Version des Spiels nicht. Den kannst du ebenfalls ermitteln lassen. (Schau dir dazu bitte mal Beispiele für "EnumWindows" an.) Und dann hast du wieder einen Ansatzpunkt für "findwindow", weil der erste Parameter nämlich der Klassenname ist.
Philer Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 79

Win XP Home
D7 Enterprise
BeitragVerfasst: So 09.11.03 16:01 
Ja oder mir fällt gerade ein, da ich ja Luckies EnumProcesses genommen hab. Da ist ja dann die ListBox mit den Processes und man könnte ja überprüfen ob ein SeriousEditor.exe in der ListBox ist, oder?
nun ja ich habe aber keine idee wegen den code. :D :oops:

_________________
- Delphi n00b -
-Philer teh thriller-
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: So 09.11.03 16:27 
Wie, du hast keine Idee? Wenn es nicht zu anstrengend für dich ist, dann bewege doch einfach den Mauszeiger auf die beiden Links und dann drück mal mit aller Kraft auf die linke Maustaste.

Da findest du mehr als genug Material zum Arbeiten.
Philer Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 79

Win XP Home
D7 Enterprise
BeitragVerfasst: So 09.11.03 17:26 
lol ok mach ich ;)

_________________
- Delphi n00b -
-Philer teh thriller-
Philer Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 79

Win XP Home
D7 Enterprise
BeitragVerfasst: So 09.11.03 17:29 
eigentlich habe ich eben etwas anderes gefragt..
und zwar, das ein TRUE zurückgegeben wird, wenn ein bestimmtes Item egal welche Zeile in der ListBox existiert.

_________________
- Delphi n00b -
-Philer teh thriller-