国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python實現監控windows服務并自動啟動服務示例

2020-02-23 05:18:27
字體:
來源:轉載
供稿:網友

使用Python 2.7 + pywin32 + wxpython開發

每隔一段時間檢測一下服務是否停止,如果停止嘗試啟動服務。進行服務停止日志記錄

AppMain.py
代碼如下:
#!/usr/bin/env python
#-*- encoding:utf-8 -*-

"""
1. 每隔一分鐘檢測一次服務狀態
2. 如果發現服務狀態已經停止,那么嘗試啟動服務
3. 自動記錄日志
4. 任務欄圖標顯示
"""

import sys;
reload(sys);
sys.setdefaultencoding('utf-8');

import win32service;
import logging;
from logging.handlers import RotatingFileHandler;
import os.path;
import wx;
import AppResource;
import webbrowser;
from AppXml import *;

C_APP_NAME = "Service Moniter 1.0";
C_LOG_DIR = os.path.altsep.join([os.path.curdir,'service.log']);
C_CONFIG_PATH = os.path.altsep.join([os.path.curdir,'config.xml']);
C_LOG_SIZE = 1048576;
C_LOG_FILES = 3;

C_APP_SITE = "http://www.du52.com/?app=service_moniter&version=1.0.0";

class ServiceControl(object):

    def __init__(self):
        self.scm = win32service.OpenSCManager(None,None,win32service.SC_MANAGER_ALL_ACCESS);

    # 檢查服務是否停止
    def isStop(self,name):
        flag = False;
        try:
            handle = win32service.OpenService(self.scm,name,win32service.SC_MANAGER_ALL_ACCESS);
            if handle:
                ret = win32service.QueryServiceStatus(handle);
                flag = ret[1]!=win32service.SERVICE_RUNNING;
                win32service.CloseServiceHandle(handle);
        except Exception,e:
            logging.error(e);
        return flag;

    # 開啟服務
    def start(self,name):
        try:
            handle = win32service.OpenService(self.scm,name,win32service.SC_MANAGER_ALL_ACCESS);
            if handle:
                win32service.StartService(handle,None);
                win32service.CloseServiceHandle(handle);
        except Exception,e:
            logging.error(e);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绥芬河市| 高唐县| 东莞市| 敖汉旗| 庐江县| 宣城市| 孝感市| 清流县| 太仆寺旗| 东乌珠穆沁旗| 青岛市| 怀安县| 舞钢市| 乌兰县| 宜城市| 额济纳旗| 玉山县| 张家界市| 红原县| 礼泉县| 邓州市| 广丰县| 延寿县| 深泽县| 中卫市| 安顺市| 南溪县| 西青区| 武陟县| 隆尧县| 宁陵县| 庆元县| 酒泉市| 涿鹿县| 灵丘县| 平昌县| 新沂市| 呼图壁县| 织金县| 邯郸市| 沛县|