windows 进程监控

来源:互联网 发布:java中static域 编辑:程序博客网 时间:2024/06/05 07:40
# 定期监视某进程是否存在,不存在则执行
    import os,time

    def __Is_Process_Running(imagename):
        '''
           功能:检查进程是否存在
           返回:返回有多少个这进程名的程序在运行,返回0则程序不在运行
        '''
        p = os.popen('tasklist /FI "IMAGENAME eq %s"' % imagename) # 利用 windows 批处理的 tasklist 命令
        return p.read().count(imagename) # p 是个文件类型,可按文件的操作

    def test():
        '''
           功能:定期地监视测进程是否还在运行,不再运行时执行指定代码
        '''
        while True:
            time.sleep(10)
            pid = __Is_Process_Running('barfoo.exe')
            if pid <= 0:
                # code .....
                break

    if __name__ == "__main__":
        test()
0 0