如何使用 Python 杀死 Windows 运行 exe
How to kill a Windows running exe with Python
如何在后台进程中结束此 exe 文件的任务:
我的代码:
import os
import subprocess
import time
import win32com.client
wmi=win32com.client.GetObject('winmgmts:')
for p in wmi.InstancesOf('win32_process'):
# print(p.Name)
if p.Name == 'boltzmann.exe':
print("Ok")
在我的代码中,我使用进程 chrome.exe 作为示例(将其替换为 boltzmann.exe):
import os
import subprocess
import time
import win32com.client
import signal
wmi=win32com.client.GetObject('winmgmts:')
def getpid(process_name):
import os
return [item.split()[1] for item in os.popen('tasklist').read().splitlines()[4:] if process_name in item.split()]
for p in wmi.InstancesOf('win32_process'):
if p.Name == 'chrome.exe':
process_id = getpid('chrome.exe')
if len(process_id) > 1:
for x in process_id:
pid = int(x)
os.kill(pid, signal.SIGTERM)
else:
pid = int("".join(getpid('chrome.exe')))
os.kill(pid, signal.SIGTERM)
我尽力使用内置库来完成这一切,这样您就不必导入很多东西
一些注意事项:
进程名称区分大小写
如果进程 运行 的优先级更高,则进程不会终止,并且会出现访问被拒绝的错误
如何在后台进程中结束此 exe 文件的任务:
我的代码:
import os
import subprocess
import time
import win32com.client
wmi=win32com.client.GetObject('winmgmts:')
for p in wmi.InstancesOf('win32_process'):
# print(p.Name)
if p.Name == 'boltzmann.exe':
print("Ok")
在我的代码中,我使用进程 chrome.exe 作为示例(将其替换为 boltzmann.exe):
import os
import subprocess
import time
import win32com.client
import signal
wmi=win32com.client.GetObject('winmgmts:')
def getpid(process_name):
import os
return [item.split()[1] for item in os.popen('tasklist').read().splitlines()[4:] if process_name in item.split()]
for p in wmi.InstancesOf('win32_process'):
if p.Name == 'chrome.exe':
process_id = getpid('chrome.exe')
if len(process_id) > 1:
for x in process_id:
pid = int(x)
os.kill(pid, signal.SIGTERM)
else:
pid = int("".join(getpid('chrome.exe')))
os.kill(pid, signal.SIGTERM)
我尽力使用内置库来完成这一切,这样您就不必导入很多东西
一些注意事项:
进程名称区分大小写
如果进程 运行 的优先级更高,则进程不会终止,并且会出现访问被拒绝的错误