Windows自动定时执行任务的几种实现方法_第1页
Windows自动定时执行任务的几种实现方法_第2页
Windows自动定时执行任务的几种实现方法_第3页
Windows自动定时执行任务的几种实现方法_第4页
Windows自动定时执行任务的几种实现方法_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Windows自动定时执行任务的几种实现方法2023-10-2017:40:10| 分类:SqlServer|字号订阅Windows自动定时执行任务,常见的方法有三种:Windows任务打算程序WindowsServiceSQLAgent的Job.NetWindowsServiceJobs的作为例子介绍如何定制WindowsService以及如何让WindowsService自动定时执行任务。首先,我们来看:使用Windows任务打算程序如何创立自动定时执行任务:界面方式:计算机(右键)->治理,然后就可以翻开“计算机治理”界面,在界面的左侧有一个系统工具->任务打算程序,在此我们可以创立定时执行的打算任务,并且可以为每个任务添加触发器和具体的操作。;具体的使用方法应当很简洁,这里就不再一一介绍。CMD命令行方式:主要命令是SchTasks(另外还有AT命令,该命令用来调用或者执行已经存在于TaskSchedule列表中的Task).命令行形式可以用于制作安装和部署包。假设用界面方式的话,安装和部署都不太便利。SchTasks/?: 查看SchTasks命令,SCHTASKS/parameter[arguments]描述:允许治理员创立、删除、查询、更改、运行和中止本地或远程系统上的打算任务。参数列表:/Create 创立打算任务。/Delete 删除打算任务。/Query 显示全部打算任务。/Change 更改打算任务属性。/Run 按需运行打算任务。/End 中止当前正在运行的打算任务。/ShowSid 显示与打算的任务名称相应的安全标识符。/? 显示此帮助消息Windows任务打算程序需要:具体的任务执行程序(exe,批处理);而通过设置,让Windows来把握具体的执行的具体时间,重复度,触发条件,等。我们可以把握的是 具体的任务执行程序。固然假设我们将什么时候定时执行任务以及如何重复执行触发条件等都写在程序里,也未尝不行但是这样的话就抹杀了Windows任务打算程序的特有功能了!!WindowsService如何解决自动定时执行任务。WindowsService解决自动定时执行任务的方案是,制作一个WindowsService程序,Service内部部署好具体的任务程序,以及把握任务什么时候执行,如何重复,等等。他的可控性和自定义空间相比任务打算程序大,但是自己的工作量相对而言就大一些。有关如何制作WindowsService程序,我在下篇文章中会介绍,这里只介绍如何部署和卸载。WindowsService只能通过命令行形式来部署。但是具体的命令有两种:InstallUtil和sc〔WindowsServiceProgram启动点中添加自定义的Installer和启动参数来实现不用InstallUtil和sc来安装和卸载,最终还是要通过命令行形式输入运行参数来安装,这个我会在后续的文章中详解WindowsService中添加启动参数和自定义Installer〕InstallUtil.exe是.NetFramework自带的工具,一般他的路径在C:\Windows\Microsoft.NET\Framework\version\下。使用方法:installutil[/uninstall][option[...]]assemblyname其中assemblyname必需使用程序集的版本、区域性和公钥标记完全限定程序集名称InstallUtil.exe(MSDN)SC.NetFramework〔固然假设期望运行C#程序,.NetFramework是必需的,所以一般状况下我们都可以用InstallUtil命令来部署和卸载〕。我以前做开发Service时遇到的一个问题是,当我用InstallUtil部署好一个Service,但由于程序更,需要卸载后重部署,这个时候,就消灭用InstallUitl/u无法卸载的状况,具体的缘由还不太明白,但是MSDN上说明白InstallUtil安装的时候是启用事务的,但是卸载的时候不启用事务,会不会是这个缘由呢??但是,这中状况下,我却可以用scdelete命令来卸载。scsc/?:

描述:SC是用于与效劳把握治理器和效劳进展通信的命令行程序。sc<server>[command][servicename]<option1><option2>...选项<server>的格式为“\\servername”键入“sc[command]“可以获得有关命令的进一步帮助命令:query 查询效劳的状态,或枚举效劳类型的状态。queryex 查询效劳的扩展状态,或枚举效劳类型的状态。start 启动效劳。向效劳发送PAUSE把握恳求。interrogate-----向效劳发送INTERROGATE把握恳求。continue--------向效劳发送CONTINUE把握恳求。stop------------向效劳发送STOP恳求。config 更改效劳的配置永久)。description 更改效劳的描述。failure 更改效劳失败时执行的操作。failureflag 更改效劳的失败操作标志。sidtype---------更改效劳的效劳SID类型。privs 更改效劳的所需权限。qc 查询效劳的配置信息。qdescription 查询效劳的描述。qfailure 查询失败时效劳执行的操作。qfailureflag 查询效劳的失败操作标志。qsidtype--------查询效劳的效劳SID类型。qprivs 查询效劳的所需权限。qtriggerinfo 查询效劳的触发器参数。qpreferrednode--查询首选的效劳NUMA节点。delete----------(从注册表)删除效劳。create 创立效劳(将其添加到注册表)。control 向效劳发送把握。sdshow 显示效劳的安全描述符。sdset 设置效劳的安全描述符。showsid---------显示相应于假定名称的SID字符串。triggerinfo 配置效劳的触发器参数。preferrednode---设置首选的效劳NUMA节点。GetDisplayName--猎取效劳的DisplayNameGetKeyName------猎取效劳的ServiceKeyName。EnumDepend 枚举效劳的依存关系。y

以下命令不要求效劳名称:sc<server><command><option>boot------------(ok|bad) 指示是否将上一次启动保存为最近一次的正确启动配置Lock 锁定效劳数据库QueryLock-------查询SCManager数据库的LockStatusscstartMyService是否想参阅QUERY和QUERYEX命令的帮助?[y|n]:QUERY和QUERYEX选项:假设查询命令带效劳名称,将返回该效劳的状态。其他选项不适合这种状况。假设查询命令不带参数或带以下选项之一,将枚举此效劳。type= 要枚举的效劳的类型(driver,service,all)默认service)state= 要枚举的效劳的状态(inactive,all)(默认=active)bufsize=枚举缓冲区的大小(以字节计)(默认=4096)ri= 开头枚举的恢复索引号(默认=0)group= 要枚举的效劳组(默认allgroups)语法例如scquery -枚举活动效劳和驱动程序的状态scqueryeventlog -显示eventlog效劳的状态scqueryexeventlog -显示eventlog效劳的扩展状态scquerytype=driver -仅枚举活动驱动程序scquerytype=service -仅枚举Win32效劳scquerystate=all -枚举全部效劳和驱动程序scquerybufsize=50 -枚举缓冲区为50字节scqueryri=14 -枚举时恢复索引=14scqueryexgroup= -枚举不在组内的活动效劳scquerytype=interact-枚举全部不活动效劳scquerytype=drivergroup=NDIS -枚举全部NDIS驱动程序上面的用法都是来自系统help,具体使用很简洁,试一试就OK了。WindowsService是一种完全自定义把握的实现自动定时执行任务的方法,可以自定义的东西很多,Windows任务打算程序略微简洁一些,适合灵敏度和扩张性要求高的状况。最终,我们简洁介绍一些SQLAgentJob。SQLAgent是SQLServerSQLAgentWindowsService.这个只适用于数据库方面的数据定时更,定时发送邮件,等等与数据库相关任务,但是牵涉到桌面应用方面的可能就无能为力了,这里不再多介绍了!总而言之,使用何种方法来实现任务的定时的按打算执行 ,需要依据具体的状况来定:仅仅与数据库相关的,用SQLAgent不需要考虑太多灵敏性和扩展性的,用Windows任务打算程序灵敏度高,需要考虑扩展应用〔Job,依据自定义方式执行Job,...〕,WindowsService接下来的文章,我会用一个比较简洁的例子,介绍如何构建,部署WindowsService!--治理

企业治理器--sqlserver(WINDOWS)代理--右键作业--建作业--“常规“项中输入作业名称--“步骤“项--建--“步骤名“中输入步骤名--“类型“中选择“Transact-SQL脚本TSQL)“--“数据库“选择执行命令的数据库--“命令“中输入要执行的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论