首页 > 解决方案 > 如何在python中捕获一个进程?

问题描述

我目前正在实习期间为 PortableMu 制作一个 lil' 发射器。

我们(公司和我)为 Mu-Editor 建模了一个特殊模式,我们将它与 PortableMu 一起发布,这样用户就不需要安装 Mu 和/或 Python 来使用它。

PortableMu for Windows 的问题是,您使用 .bat 启动它,这不会给您任何反馈。你点击,你等待〜1-2分钟,也许Mu-Editor会弹出。

这不是很用户友好。

所以我的职责是创建一个发射器。我的启动器很简单:只需“欢迎”一张图片和一个按钮即可启动 PortableMu。它适用于我的私人 windows10。

现在我想添加随机选择的消息以模拟“加载”,当 Mu-Editor 弹出时,该消息将停止。只是为了跨越时间

发生这种情况时有什么方法可以捕捉吗?唉:Python 能抓住 Windows 为 Mu-Editor 打开任务/进程的那一刻吗?如果,怎么做?

标签: python

解决方案


使用任务列表

subprocess.Popen('tasklist').comunicate()[0]将返回当前在 Windows 中发生的所有任务,只需每分钟左右执行一次并检查您的任务。有一些方法可以在不弹出命令窗口的情况下通过,这是我经常使用的方法

command =subprocess.Popen(["ping","-n","1","-w","100", str(ip)], stdout=subprocess.PIPE, shell=False, creationflags = 0x08000000)
reply = str(command.communicate()[0])

推荐阅读