如何使用pywin或win32进行检查com客户端在python中,如果某个任务正在任务管理器中运行?

2024-09-25 06:20:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须举例说明任务火狐.exe在任务管理器中运行。 使用python的win32com客户端我想检查firefox是否打开,如果它没有打开,给另一个消息或打开它或其他东西

我试着打印所有的进程然后搜索'火狐.exe“在进程名称但它不起作用

import wmi
import win32com.client

if win32com.client.GetActiveObject("firefox.application")
print("Running firefox !!!")
else:
print("No Firefox!!!")

这是我现在试过的,但不起作用

我希望python脚本在任务管理器中搜索一个进程,如果它没有打开,就打开它或做其他事情。你知道吗

谢谢


Tags: import名称client消息客户端管理器if进程
1条回答
网友
1楼 · 发布于 2024-09-25 06:20:59

GetActiveObject用于获取对已在全局运行对象表中注册的COM对象实例的引用。这不是你真正需要的。不过,您可以使用Windows管理界面的COM接口来获取进程列表,这非常简单。你知道吗

import win32com
wmi = win32com.client.GetObject('winmgmts:')
pids = [p.ProcessId for p in wmi.InstancesOf('win32_process') if p.Name == 'firefox.exe']

因此,我们可以使用wmiwin32u进程类获取进程列表,并将其筛选为可执行文件名,然后从进程对象获取进程id或其他属性。你知道吗

相关问题 更多 >