![]() |
Prozess killen
Abend,
mit folgenden Code möchte ich einen Prozess beenden:
Delphi-Quellcode:
Es passiert aber nichts, die Anwendung wird nicht beendet. Was mache ich falsch?function KillProcess(const ExeName: String): Boolean; var Process: TProcessEntry32; h: THandle; begin Result := False; Process.dwSize := SizeOf(Process); h := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0); try if Process32First(h, Process) then repeat if AnsiLowerCase(Process.szExeFile) = AnsiLowerCase(ExeName) then Result := TerminateProcess(OpenProcess(Process_Terminate, False, Process.th32ProcessID), 0); until (not Process32Next(h, Process)) or Result; finally CloseHandle(h); end; end; //Aufruf: KillProcess(IncludeTrailingPathDelimiter(GetShellFolder(CSIDL_PROGRAM_FILES)) + 'Windows Sidebar\sidebar.exe'); |
Re: Prozess killen
Hi,
Ich glaube du musst den Exenamen ohne den Pfad angeben:
Delphi-Quellcode:
Gruß
KillProcess('sidebar.exe');
Neutral General |
Re: Prozess killen
Woher stammt dieser Code? Ich bin immer noch der Meinung, dass man Handles nach Benutzung wieder schließen sollte.
|
Re: Prozess killen
Du musst nur den ExeNamen übergeben und nicht den Pfad zur Exe.
|
Re: Prozess killen
Zitat:
|
Re: Prozess killen
Ich meinte das Prozess-Handle.
|
Re: Prozess killen
Zitat:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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 by Thomas Breitkreuz