我需要一些python服务的帮助。将参数传递给python服务
我有一个用Python编写的服务。我需要做的是传递一些论据。让我给你一个例子来解释它好一点。
可以说我有一个服务,它什么都不做,只是写了一些东西给日志。我想多次将相同的东西写入日志中,所以我使用循环。当我开始服务时,我想通过柜台循环,但我不知道如何。我开始与服务:
win32serviceutil.HandleCommandLine(WinService)
我正在寻找类似
win32serviceutil.HandleCommandLine(WinService,10)
我真的不关心它怎么做,只要我可以传递参数给它。一直试图让这一天在没有运气的情况下在更好的一天工作。此外,该服务不是直接运行,而是导入并从那里运行。
编辑:
这里是一个例子,希望它会清除一些事情。
这是WindowsService.py:
import win32serviceutil, win32service, win32event, servicemanager, win32serviceutil
class LoopService(win32serviceutil.ServiceFramework):
_svc_name_ = "LoopService"
_svc_description_ = "LoopService"
_svc_display_name_ = "LoopService"
def __init__(self,args):
win32serviceutil.ServiceFramework.__init__(self,args)
self.hWaitStop = win32event.CreateEvent(None,0,0,None)
def SvcStop(self):
self.ReportServiceStatus(win32service.SERVICE_STOP_PENDING);
win32event.SetEvent(self.hWaitStop);
def SvcDoRun(self):
i = 0;
while i < 5:
servicemanager.LogInfoMsg("just something to put in the log");
i += 1
win32event.WaitForSingleObject(self.hWaitStop, win32event.INFINITE)
这是在主脚本:
import service.WindowsService, win32serviceutil
win32serviceutil.HandleCommandLine(service.WindowsService.LoopService);
由于它是目前,循环将执行次数固定量。我想只是简单地将价值发送到服务。真的不在乎如何。
我编辑了我的帖子,以包含一个希望给出更多信息的例子。 – Grim 2010-06-09 00:16:49