Suche x64 Version KillAllProcessesByName()
Verfasst: 13.10.2022 13:17
Hallo,
vor langer Zeit hatte ich folgende Funktion gefunden und in meine Software eingebaut:
Funktioniert in der 32Bit Version immer noch einwandfrei.
Hat jemand sowas auch für x64 irgendwo mal gefunden oder parat?
Ich bin da überfordert.
vor langer Zeit hatte ich folgende Funktion gefunden und in meine Software eingebaut:
Code: Alles auswählen
Procedure KillAllProcessesByName(ProcessName.s)
; PB 4.30
; Remove multiple processes without GUI...
#PROCESS_TERMINATE = $1
#PROCESS32LIB = 9999
#TH32CS_SNAPPROCESS = $2
If OpenLibrary (#PROCESS32LIB, "kernel32.dll")
snap= CallFunction (#PROCESS32LIB, "CreateToolhelp32Snapshot", #TH32CS_SNAPPROCESS, 0)
If snap
Define.PROCESSENTRY32 Proc32
Proc32\dwSize = SizeOf (PROCESSENTRY32)
If CallFunction (#PROCESS32LIB, "Process32First", snap, @Proc32)
Repeat
ProcName.s = PeekS(@Proc32 + 36, 296,#PB_Ascii)
Debug procname.s
If LCase(Left(ProcName,8)) = LCase(Left(ProcessName.s,8)) ; Groß/Klein und diverse Versionen von "notepad"
phandle = OpenProcess_ (#PROCESS_TERMINATE, #False, PeekL(@Proc32 + 8))
If phandle <> #Null
If TerminateProcess_ (phandle, 1)
result = #True: EndIf
CloseHandle_ (phandle)
EndIf
EndIf
Until CallFunction (#PROCESS32LIB, "Process32Next", snap, @Proc32) = 0
EndIf
CloseHandle_ (snap)
EndIf
CloseLibrary (#PROCESS32LIB)
EndIf
EndProcedure
KillAllProcessesByName("notepad.exe")
Hat jemand sowas auch für x64 irgendwo mal gefunden oder parat?
Ich bin da überfordert.