首页
社区
课程
招聘
未解决 [求助]这个需求用python如何实现
2021-2-13 18:29 2875

未解决 [求助]这个需求用python如何实现

2021-2-13 18:29
2875

python去调用windows下面的exe,这个exe执行完成的时间较长,可以认为是阻塞的状态。
但有时候这个exe进程会意外退出,我想每隔5分钟检测这个进程是否存在?如果退出了就重启这个进程,如果存在的话就继续监控。
网上我搜了一下,似乎是守护进程关键字方面的,但是我的要求和网上的demo不是很一样。
不知道有没有这方面的近似的参考例子?


[培训]科锐软件逆向50期预科班报名即将截止,速来!!! 50期正式班报名火爆招生中!!!

收藏
免费 0
打赏
分享
最新回复 (2)
雪    币: 365
活跃值: (1959)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
crackwiki 2021-2-14 22:13
2
0

#!/usr/bin/env python

# -*- coding: utf-8 -*-


import time

import psutil

import subprocess


exe_name = "test.exe"


while 1:

    exepid = None

    pids = psutil.pids()

    for pid in pids:

        try:

            p = psutil.Process(pid)

            if p.name() == exe_name:

                print("找到EXE进程:%x" % pid)

                exepid = pid

                break

        except (psutil.NoSuchProcesspsutil.AccessDeniedpsutil.ZombieProcess):

            pass

    if exepid is None:

        subprocess.Popen(exe_name)

    else:

        time.sleep(5*60)


手写代码未做测试,就是不停的枚举所有进程,看EXE是否在进程列表中,如果不在就运行EXE,在就等300秒再次枚举进程,大致应该就是这样!

最后于 2021-2-14 22:20 被crackwiki编辑 ,原因:
雪    币: 1540
活跃值: (2807)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
limee 2021-2-15 00:12
3
0
谢谢,我一会去试验一下。
游客
登录 | 注册 方可回帖
返回