判断打开的exe可执行文件是否打开或关闭状态
前言
本文旨在提供一种通过 Python 判断 exe 可执行文件是否处于打开或关闭状态的方法,并封装成函数形式。如果您对此感兴趣或有任何疑问,欢迎点赞、收藏本文,并在评论区留下您的讨论和看法,期待与您共同交流和学习。
正文
1、f_exeIsRunning() 函数代码
f_exeIsRunning()
:判断exe可执行文件是否正在运行的函数 ,直接展示完整代码:
# 判断exe可执行文件是否正在运行
def f_exeIsRunning(exe_path):
"""
function: 判断exe可执行文件是否正在运行
in: exe_path:exe可执行文件的路径
out: bool
return: True or False
others: Determines If The EXE Is Running Func
"""
for proc in psutil.process_iter(['name']):
try:
if proc.info['name'] == exe_path:
return True
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
return False
2、f_exeIsRunning() 函数解析
f_exeIsRunning()
函数主要采用了第三方库 psutil 来检查当前运行的进程列表,并查看你的可执行文件是否在其中;
传参为:exe_path ,可执行文件的路径;
返回值:True or False ,如果正在运行,则返回 True 反之返回 False;
3、f_exeIsRunning() 函数使用方法
# 判断打开的exe可执行文件是否正在运行
if f_exeIsRunning(exe_path):
# 如果已经打开,打印路径
print(f"{exe_path}已经打开")
else:
# 如果未打开,则打开
print(f"{exe_path}未打开")
subprocess.run(exe_path)
注意: 在这个使用示例中,使用了 subprocess 库来打开 exe 可执行文件,是因为 exe_path 的路径中函数中文,如果使用 os 库打开会报错 os.system(exe_path)
;
使用 subprocess 的 run() 方法调用 exe 文件时,可以直接提供包含中文的路径字符串。