只要Windows XP正在运行,我如何计划Python脚本运行?

问题描述:

我写了一个温度记录器Python脚本,并将其作为Windows XP中的计划任务输入。它具有以下命令行:只要Windows XP正在运行,我如何计划Python脚本运行?

C:\Python26\pythonw.exe "C:\path\to\templogger.py" 

它写数据到本地公用文件夹中的文件(例如完全访问所有本地谁登录)。

到目前为止,我能够实现这个目标:
1.获取甚至运行任务的人登录(即“按下Ctrl键+ Alt键+德尔”屏幕之前, )

,但我有这些问题:
1.当我登录,注销,然后重新登录,计划的任务不再有效。我无法再在任务管理器的进程选项卡中看到它。我怀疑它在我注销时关闭。
2.我尝试将任务的“Run As ...”属性设置为DOMAIN\my-username,并尝试了SYSTEM,但上面的问题#1仍然存在。

摘要:
我想我的程序,只要Windows处于活动状态运行。任何人登录或注销都无关紧要。

P.S.
我问超级用户the same question,我被建议把它写成服务,我对此一无所知(除了启动和停止它们)。我希望在这里能够吸引更多的观众。

+0

[我可以将Python脚本作为服务运行(在Windows中)吗?如何?](http://stackoverflow.com/questions/32404/can-i-run-a-python-script-as-a-service-in-windows-how) – Mizipzor 2010-08-19 10:54:25

+0

关于'agiletesting'的文章,can我将它应用于''py2exe'编译的exe's? – Kit 2010-08-19 11:02:38

+0

@Kit:我应该这样想;你会用'myexe-ifiedscript.exe'替换myscript.bat。 – katrielalex 2010-08-19 11:26:53

你的情况是完全必需的使用情况下的服务,可惜的任务是不适合于你在找什么做的。这就是说在Python写服务是不是在公园里散步或者,在这里缓解疼痛是我在过去仔细阅读几个环节:

http://agiletesting.blogspot.com/2005/09/running-python-script-as-windows.html

http://mail.python.org/pipermail/python-win32/2008-April/007298.html

我使用的第二个链接特别是创建一个windows脚本,然后使用py2exe将其编译为可执行的服务并使用SrvAny进行安装。

+0

你的第二个链接是否使用Mark Hammond的['pywin32'](http://sourceforge.net/projects/pywin32/)包? – Kit 2010-09-16 00:05:19