Office中国论坛/Access中国论坛
标题:
计划任务小教程——关于定时运行程序的利器
[打印本页]
作者:
roych
时间:
2015-12-19 09:48
标题:
计划任务小教程——关于定时运行程序的利器
本帖最后由 roych 于 2015-12-19 10:39 编辑
刚刚在论坛看到有群友提出如何定时运行程序的问题。定时运行的程序,从理论上讲,任意文件都是可以用于执行计划任务的。不过实际上,我们常常都是使用诸如宿主脚本(VBS)、批处理文件(bat)或者可执行文件(exe)等文件来执行。
下面以之前做的一个小玩意儿,简略讲解下如何定时执行程序。新建一个文本文件,输入以下代码:
Dim fso, fl,y,m,d,ymd,ws
Set fso = CreateObject("scripting.filesystemobject")
y=Year(Date())
if month(date())<10 then
m="0"&month(date())
else
m=month(date())
end if
if day(date())<10 then
d="0"&day(date())
else
d=day(date())
end if
'获取日期格式
ymd= y&"_"&m&"_"&d
'分卷压缩,每卷100M。
on error resume next
Set ws=CreateObject("wscript.shell")
For Each fl In fso.GetFolder("D:\db_backup").Files
If instr(1,fl.Name,ymd)>0 Then
ws.run """C:\Program Files (x86)\WinRAR\WinRAR.exe"" a -v154000[k] ""D:\db_backup\Backup_Winrar" & Left(fl.Name, Len(fl.Name) - 4) & ".rar" & """ """ & fl.path & """"
End If
Next
'退出脚本
Wscript.Quit
复制代码
另存为“分卷压缩.vbs"【不清楚的请自行在文末下载附件】。VBScript的写法类似于VBA,但不能定义变量类型了,需要创建其它组件,只能使用
CreateObject,而不是New哦。还有不能用like等,具体请自行参考语法差别。
这里不使用Access文件来处理,是因为服务端没有安装该程序。如果使用Access,则需要设置AutoExec宏来执行,否则只是打开文件,并不会执行里面的代码。因此不太建议使用Access来完成一些计划任务【例如备份数据库】等等。这是题外话了。
接下来新建一个计划任务:
[attach]57571[/attach]
命名计划任务:
[attach]57572[/attach]
设置定时执行时间:
[attach]57573[/attach]
点击”操作“选项卡,浏览打开刚刚保存的vbs脚本:
[attach]57574[/attach]
返回主界面,点击确定:
[attach]57575[/attach]
可能需要设置密码(如果有的话):
[attach]57576[/attach]
这时候我们可以在计划任务中看到刚刚建立的计划任务了:
[attach]57577[/attach]
需要注意的是,
如果密码更改,则可能不会再次执行,
因此建议服务端设置密码有效期为”永久“。
[attach]57578[/attach]
作者:
admin
时间:
2015-12-19 10:14
强!,谢谢分享!
作者:
764300778
时间:
2015-12-20 20:51
eeee
作者:
5988143
时间:
2015-12-21 10:02
學習學習~
作者:
purplerose
时间:
2016-3-3 10:51
ROYCH 不错呀,值得表扬!
作者:
522650696
时间:
2016-4-14 17:02
强!,谢谢分享!
作者:
p51219
时间:
2016-7-14 22:28
好好好好好
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3