(讨论)关于间隔一段时间运行程序问题
现在想每间隔3小时就运行一下程序,有没有什么好方法可以不太占用系统资源的,即不用运行程序计数我尝试过的方法:
1:使用autoit的sleep功能计时运行
$i=1
while $i<4 ;总共运行3次
sleep(150000)
run(D:\up.exe)
$i=$i+1
wend
2:使用VBS脚本计时
Set iisget = WScript.CreateObject("WScript.Shell")
Do While true
wscript.sleep 1500000
iisget.run"D:\up.exe",0
loop
3:使用系统自带的计划任务调用
第1,2种效果都差不多,都要运行程序或在后台计时,占有了系统差不多5M的内存,
第3种方法直接使用系统的计划任务定时调用,可以通过schtasks /create 写批处理实现,但是创建成功的要求是当前用户或设置的用户要设置密码,如果密码为空,则即使创建了也不能运行.
请问有什么好的方法与建议吗?
[ 本帖最后由 jakykuang 于 2009-4-17 01:01 编辑 ] 有好方法吗?? 这个问题实在不好回答啊。
不让程序运行,又想让它定时启动。典型的又想马儿跑,又要马儿不吃草。
即使是系统自带的计划任务,也是要开相关服务,也要占资源的。 系统默认都开了计划任务功能,我用了一个批处理判断服务有没有开,是否要安装服务,再用命令在组策略关了点功能,现在可以了,但会有隐患,郁闷ing rem 判断Schedule服务是否存在,若不存在,则安装服务,若服务没有启动,则启动服务
@echo off
sc query Schedule | find "FAILED" > nul
if %errorlevel% EQU 0 (RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 .\mstask.inf) else net start Schedule 有没有好点的方法??? learn~~~~~~~~~
页:
[1]