![]() |
Re: Externes Programm sofort beenden (ein Spiel!)
Da steht:
Delphi-Quellcode:
Sorry daraus kann ich nicht sicher erkennen, dass das was fremdes ist.
also das is sowas wie Gothic oder so ein Grafik-Spiel eben
|
Re: Externes Programm sofort beenden (ein Spiel!)
Ja, ich nochmal!
@SleepyMaster: Sorry, der Text funktioniert doch! was soll passieren, wenn man SetRun(false,1,Progname); angibt? da passiert gar nix. Und noch ne Frage: Ich hab ja den Fensternamen von diesen Spielen nicht! Kann man den irgendwie herausbekommen? (hab was von FindWindowByFileName gelesen irgendwo! geht sowas?) bin für schnelle tipps sehr dankbar! MfG Lefko. |
Re: Externes Programm sofort beenden (ein Spiel!)
Wenn man als Parameter false übergibt, dann kann man das Programm wieder starten, ohne das es sofort wieder beendet wird!
|
Re: Externes Programm sofort beenden (ein Spiel!)
Fenstername steht normalerweiße im Taskmanager!
JUHUU!!! hundertster Beitrag ;) |
Re: Externes Programm sofort beenden (ein Spiel!)
Zitat:
und für CounterStrike einfach SetRun(true,1,'cstrike'); schreiben? Zitat:
Danke, da bin cih schon viel weiter :) aber zur sicherheit, wie kann ich den fensternamen den erlangen, wenn ich nur den namen der exe-datei hab? der ist doch nicht immer der selbe, ne? MfG Lefko. |
Re: Externes Programm sofort beenden (ein Spiel!)
Wenn du das Programm nur einmal beenden (oder halt ins Timer ereigniss setzen willst) willst dann genügt:
Delphi-Quellcode:
Der Rest ist eigendlich nur dafür da anstelle von Timern Threads zu nehmen (z.b.:NonVCL).
if FindWindow(NIL,PChar(Programmname))<>0 then PostMessage(FindWindow(NIL,PChar(Programmname)), wm_close, 1, 1);
Aber das andere ist wesentlich einfacher:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
begin if FindWindow(NIL,'DiabloII')<>0 then PostMessage(FindWindow(NIL,'DiabloII'), wm_close, 1, 1); if FindWindow(NIL,'cstrike')<>0 then PostMessage(FindWindow(NIL,'cstrike'), wm_close, 1, 1); end; Nimm also lieber das Zweite hier! |
Re: Externes Programm sofort beenden (ein Spiel!)
Moin!
wenn du verhindern willst das ein spiel erst gestartet wird, kannst du doch einfach einen globalen hook schreiben der das abfängt. ciao, moin339 :coder: |
Re: Externes Programm sofort beenden (ein Spiel!)
Zitat:
MfG Lefko. |
Re: Externes Programm sofort beenden (ein Spiel!)
Oke, ich hab das jetz einfach ganz simpel mit
Delphi-Quellcode:
gemacht und es klappt wunderbar...
if FindWindow(nil, Programm) <> 0 then PostMessage(..programm.....wm_close...)
also, allet gelöst, kann dichtgemacht werden :) MfG Lefko. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:24 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