
另外,在Python中也可以使用Windows窗口界面自动化 *** 作来实现更复杂的任务,例如自动处理重复性劳动,或实现简单的机器人来执行简单的 *** 作。总之,Windows窗口界面自动化 *** 作在Python中有很多用途,可以帮助开发人员提高工作效率和提高应用程序的测试覆盖率。
你可以使用 pythoncom 库,它包含ActivePython 或者可以安装pywin32 (Python for Windows extensions).
下面是一个简单 *** 作服务的例子:
import pythoncomimport win32serviceutil
import win32service
import win32event
import servicemanager
import socket
class AppServerSvc (win32serviceutil.ServiceFramework):
_svc_name_ = "TestService"
_svc_display_name_ = "Test Service"
def __init__(self,args):
win32serviceutil.ServiceFramework.__init__(self,args)
self.hWaitStop = win32event.CreateEvent(None,0,0,None)
socket.setdefaulttimeout(60)
def SvcStop(self):
self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING)
win32event.SetEvent(self.hWaitStop)
def SvcDoRun(self):
servicemanager.LogMsg(servicemanager.EVENTLOG_INFORMATION_TYPE,
servicemanager.PYS_SERVICE_STARTED,
(self._svc_name_,''))
self.main()
def main(self):
pass
if __name__ == '__main__':
win32serviceutil.HandleCommandLine(AppServerSvc)
你的代码需要放在mian()方法里面,通常会有一些情况通过检查你在 SvcStop 方法中设置的标志,然后中断循环
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)