关于windows计划任务设置和自动定时执行任务的方法 篇一:Windows自动定时执行任务的几种实现方法 常见的方法有三种: Windows任务计划程序 WindowsService SQLAgent的Job 这三种方法大多数人都用过,我在这里只做一个比较简单的介绍和小结,后续,我会用一个轻量型的。NetWindowsServiceJobs的作为例子介绍如何定制WindowsService以及如何让WindowsService自动定时执行任务。 首先,我们来看:使用Windows任务计划程序如何创建自动定时执行任务: 界面方式:计算机(右键)管理,然后就可以打开“计算机管理”界面,在界面的左侧有一个系统工具任务计划程序,在此我们可以创建定时执行的计划任务,并且可以为每个任务添加触发器和具体的操作。 具体的使用方法应该很简单,这里就不再一一介绍。 CMD命令行方式:主要命令是SchTasks(另外还有AT命令,该命令用来调用或者执行已经存在于TaskSchedule列表中的Task)。命令行形式可以用于制作安装和部署包。如果用界面方式的话,安装和部署都不太方便。 SchTasks:查看SchTasks命令, SCHTASKSparameter〔arguments〕 描述: 允许管理员创建、删除、查询、更改、运行和中止本地或远程系统上的计划任务。 参数列表: Create创建新计划任务。 Delete删除计划任务。 Query显示所有计划任务。 Change更改计划任务属性。 Run按需运行计划任务。 End中止当前正在运行的计划任务。 ShowSid显示与计划的任务名称相应的安全标识符。 显示此帮助消息 Windows任务计划程序需要:具体的任务执行程序(exe,批处理);而通过设置,让Windows来控制具体的执行的具体时间,重复度,触发条件,等。我们可以控制的是具体的任务执行程序。当然如果我们将什么时候定时执行任务,以及如何重复执行,触发条件等都写在程序里,也未尝不可,但是这样的话,就抹杀了Windows任务计划程序的特有功能了! 接下来,我们来看一下,WindowsService如何解决自动定时执行任务。 利用WindowsService解决自动定时执行任务的方案是,制作一个WindowsService程序,在Service内部部署好具体的任务程序,以及控制任务什么时候执行,如何重复,等等。他的可控性和自定义空间相比任务计划程序大,但是自己的工作量相对而言就大一些。 有关如何制作WindowsS ervice程序,我在下篇文章中会介绍,这里只介绍如何部署和卸载。 部署WindowsService只能通过命令行形式来部署。但是具体的命令有两种:InstallUtil和sc (也可以在WindowsService的Program启动点中添加自定义的Installer和启动参数来实现不用 InstallUtil和sc来安装和卸载,最后还是要通过命令行形式输入运行参数来安装,这个我会在后续的文章中详解如何在WindowsService中添加启动参数和自定义Installer) InstallUtil。exe是。NetFramework自带的工具,一般他的路径在 C:WindowsMicrosoft。NETFrameworkversion下。 使用方法:installutil〔uninstall〕〔option〔。。。〕〕assemblyname 其中assemblyname必须使用程序集的版本、区域性和公钥标记完全限定程序集名称 SC是系统自带的命令,不需要。NetFramework(当然如果希望运行C程序,。NetFramework是必须的,所以一般情况下我们都可以用InstallUtil命令来部署和卸载)。我以前做开发Service时碰到的一个问题是,当我用InstallUtil部署好一个Service,但由于程序更新,需要卸载后重新部署,这个时候,就出现用InstallUitlu无法卸载的情况,具体的原因还不太明白,但是MSDN上说明了InstallUtil安装的时候是启用事务的,但是卸载的时候不启用事务,会不会是这个原因呢??但是,这中情况下,我却可以用sc命令来卸载。 有关sc命令的使用方法,sc: 描述: SC是用于与服务控制管理器和服务进行通信的命令行程序。 用法: sc〔command〕〔servicename〕。。。option2option1 选项的格式为“servername” 键入sc〔command〕可以获得有关命令的进一步帮助 命令: query查询服务的状态, 或枚举服务类型的状态。 queryex查询服务的扩展状态, 或枚举服务类型的状态。 start启动服务。 pause向服务发送PAUSE控制请求。 interrogate向服务发送INTERROGATE控制请求。 continue向服务发送CONTINUE控制请求。 stop向服务发送STOP请求。 config更改服务的配置(永久)。 description更改服务的描述。 failure更改服务失败时执行的。操作。 failureflag更改服务的失败操作标志。 sidtype更改服务的服务SID类型。 privs更改服务的所需权限。 qc查询服务的配置信息。 qdescription查询服务的描述。 qfailure查询失败时服务执行的操作。 qfailureflag查询服务的失败操作标志。 qsidtype查询服务的服务SID类型。 qprivs查询服务的所需权限。 qtriggerinfo查询服务的触发器参数。 qpreferrednode查询首选的服务NUMA节点。 (从注册表)删除服务。 create创建服务(将其添加到注册表)。 control向服务发送控制。 sdshow显示服务的安全描述符。 sdset设置服务的安全描述符。 showsid显示相应于假定名称的SID字符串。 triggerinfo配置服务的触发器参数。 preferrednode设置首选的服务NUMA节点。 GetDisplayName获取服务的DisplayName GetKeyName获取服务的ServiceKeyName。 EnumDepend枚举服务的依存关系。 下列命令不要求服务名称: sc boot(okbad)指示是否将上一次启动保存为 最近一次已知的正确启动配置 Lock锁定服务数据库 QueryLock查询SCManager数据库的LockStatus 示例: scstartMyService 是否想参阅QUERY和QUERYEX命令的帮助〔yn〕: y QUERY和QUERYEX选项: 如果查询命令带服务名称,将返回 该服务的状态。其他选项不适合这种 情况。如果查询命令不带参数或 带下列选项之一,将枚举此服务。 type要枚举的服务的类型(driver,service,all) 默认service) state要枚举的服务的状态(inactive,all) (默认active) bufsize枚举缓冲区的大小(以字节计) (默认4096) ri开始枚举的恢复索引号 (默认0) group要枚举的服务组 (默认allgroups) 语法示例 scquery枚举活动服务和驱动程序的状态 scqueryeventlog显示eventlog服务的状态 scqueryexeventlog显示eventlog服务的扩展状态 scquerytypedriver仅枚举活动驱动程序 scquerytypeservice仅枚举Win32服务 scquerystateall枚举所有服务和驱动程序 scquerybufsize50枚举缓冲区为50字节 scqueryri14枚举时恢复索引14 枚举不在组内的活动服务 scquerytypeinteract枚举所有不活动服务 scquerytypedrivergroupNDIS枚举所有NDIS驱动程序 上面的用法都是来自系统help,具体使用很简单,试一试就OK了。 WindowsService是一种完全自定义控制的实现自动定时执行任务的方法,可以自定义的东西很多,灵活性很高,所以使用起来可能会比Windows任务计划程序稍微复杂一些,适合灵活度和扩张性要求高的情况。 最后,我们简单介绍一些SQLAgent中Job。 SQLAgent是SQLServer的一个服务之一,用之前,我们需要启动SQLAgentWindowsService。这个只适用于数据库方面的数据定时更新,定时发送邮件,等等与数据库相关任务,但是牵涉到桌面应用方面的可能就无能为力了,这里不再多介绍了! 总而言之,使用何种方法来实现任务的定时的按计划执行,需要根据具体的情况来定: 仅仅与数据库相关的,用SQLAgent 不需要考虑太多灵活性和扩展性的,用Windows任务计划程序 灵活度高,需要考虑扩展应用(必须添加Job,按照自定义方式执行Job,。。。。。。),那我们可以选择WindowsService 接下来的文章,我会用一个比较简单的例子,介绍如何构建,部署WindowsService! 企业管理器 管理 sqlserver(WINDOWS平台上强大的数据库平台)代理 右键作业 新建作业 常规项中输入作业名称 步骤项 新建 步骤名中输入步骤名 类型中选择TransactSQL脚本(TSQL) 数据库选择执行命令的数据库 命令中输入要执行的语句: UpdateCitySetIsAccess0 确定 调度项 新建调度 名称中输入调度名称 调度类型中选择你的作业执行安排定为每天调度一次,时间为18:40即可 如果选择反复出现 点更改来设置你的时间安排 然后将SQLAgent服务启动,并设置为自动启动,否则你的作业不会被执行 篇二:windowsxp计划任务设置方法(附常见错误解决) 计划任务应该是很老的一个系统的功能的!记得从98下就有的!也渐渐的被人淡忘了!昨天发现还是有不少人对此不是很熟悉!另外网上的资料似乎也讲的不是很多!那就研究一下,做个教程大家熟悉一下好了! 其实有的时候计划任务也是一个不错的功能的!废话不说! 先来说下个人对计划任务的理解吧!顾名思义,计划任务就是让电脑在指定的时间内执行指定的动作(计划动作) 这些动作可以是一个程序,也可以是一个批处理,但是至少是可以运行的!再通俗一些就是双击可以打开的! 其实再通俗一点也就是相当于你在那个时间里面进行了对某个东西对鼠标双击的操作!当然只是我的理解!如有错误,欢迎指出! 搞清楚了是什么东西后,那就来看怎么设置吧! 打开我的电脑,依次打开控制面板任务计划(晕管了,我还是习惯叫计划任务。HOHO)原来系统是叫任务计划,不然后会有一个这样的界面的: 因为是空的!所以什么都没有嘛!别着急!双击打开添加任务计划(下面我就直接给图了!附带说明)可以看到! 当然是下一步了!然后会出来! 注意看红圈说的很清楚了!把想执行的东西单击选中然后下一步 说明:如果红圈内没有你想要设置计划的东西!那么点浏览然后找到想要添加的东西的位置!选中打开如图: 接着就会出现下图: 给个名字,给个时间。这里我选择了每天,(你要是想,每周什么的也可以的啊)然后下一步 这个是具体是运行时间!上个时间应该是时间频率!也就是多久运行一次的!HOHO随便给一个!下一步! 这里值得注意一下的了!就是说这里的用户名和密码不能随便给的!不少人以为随便给一个就可以了的! 这个必须和你系统的用户名和密码一致就可以了的!我的这个用户是没密码的!所以我不写直接下一步! 完成!然后看一下任务计划里面多了一个不得不爱的计划任务! 如果到最后没有弹出什么错误提示的话!那么就恭喜你!设置好了!那么我们现在来右键运行一下看看! 弹出以播放的不得不爱的格式的音乐!设置成功! 然后每天到我设置的那个时间!这个东西就会自己弹出来放歌给我听了! 总的来说设置过程还是比较简单的!