欢迎来到天天文库
浏览记录
ID:15080119
大小:73.50 KB
页数:6页
时间:2018-08-01
《windows 自动定时执行任务的几种实现方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Windows自动定时执行任务的几种实现方法 2011-10-2017:40:10
2、 分类: SqlServer
3、字号 订阅Windows自动定时执行任务,常见的方法有三种: Windows任务计划程序 WindowsService SQLAgent的Job 这三种方法大多数人都用过,我在这里只做一个比较简单的介绍和小结,后续,我会用一个轻量型的.NetWindowsServiceJobs的作为例子介绍如何定制WindowsService以及如何让WindowsService自动定
4、时执行任务。 首先,我们来看:使用Windows 任务计划程序如何创建自动定时执行任务: 界面方式:计算机(右键)->管理,然后就可以打开 “计算机管理”界面,在界面的左侧有一个系统工具->任务计划程序,在此我们可以创建定时执行的计划任务,并且可以为每个任务添加触发器和具体的操作。 ; 具体的使用方法应该很简单,这里就不再一一介绍。 CMD命令行方式:主要命令是SchTasks(另外还有AT命令,该命令用来调用或者执行已经存在于TaskSchedule列表中的Task).命
5、令行形式可以用于制作安装和部署包。如果用界面方式的话,安装和部署都不太方便。 SchTasks/?: 查看SchTasks命令, SCHTASKS/parameter[arguments]描述: 允许管理员创建、删除、查询、更改、运行和中止本地或远程系统上的计划任 务。参数列表: /Create 创建新计划任务。 /Delete 删除计划任务。 /Query 显示所有计划任务。 /Change 更改计划任务属性
6、。 /Run 按需运行计划任务。 /End 中止当前正在运行的计划任务。 /ShowSid 显示与计划的任务名称相应的安全标识符。 /? 显示此帮助消息 Windows任务计划程序需要:具体的任务执行程序(exe,批处理);而通过设置,让Windows来控制具体的执行的具体时间,重复度,触发条件,等。我们可以控制的是具体的任务执行程序。当然如果我们将什么时候定时执行任务,以及如何重复执行,触发条件等都写在
7、程序里,也未尝不可,但是这样的话,就抹杀了Windows任务计划程序的特有功能了!! 接下来,我们来看一下,WindowsService如何解决自动定时执行任务。 利用WindowsService解决自动定时执行任务的方案是,制作一个WindowsService程序,在Service内部部署好具体的任务程序,以及控制任务什么时候执行,如何重复,等等。他的可控性和自定义空间相比任务计划程序大,但是自己的工作量相对而言就大一些。 有关如何制作WindowsService程序,我在下篇文章中会介
8、绍,这里只介绍如何部署和卸载。 部署WindowsService只能通过命令行形式来部署。但是具体的命令有两种:InstallUtil 和sc (也可以在WindowsService的Program启动点中添加自定义的Installer和启动参数来实现不用InstallUtil和sc来安装和卸载,最后还是要通过命令行形式输入运行参数来安装,这个我会在后续的文章中详解如何在WindowsService中添加启动参数和自定义Installer) InstallUtil.exe是.NetFram
9、ework自带的工具,一般他的路径在C:WindowsMicrosoft.NETFrameworkversion下。 使用方法: installutil[/uninstall][option[...]]assemblyname 其中assemblyname必须使用程序集的版本、区域性和公钥标记完全限定程序集名称 详情请见InstallUtil.exe(MSDN) SC是系统自带的命令,不需要.NetFramework(当然如果希望运行C#程序,.NetFramework是必须的,所以
10、一般情况下我们都可以用InstallUtil命令来部署和卸载)。我以前做开发Service时碰到的一个问题是,当我用InstallUtil部署好一个Service,但由于程序更新,需要卸载后重新部署,这个时候,就出现用InstallUitl/u无法卸载的情况,具体的原因还不太明白,但是MSDN上说明了InstallUtil安装的时候是启用事务的,但是卸载的时候不启用事务,会不会是这个原因呢??但是,这中情况下,我却可以用scdelete命令来卸载。 有
此文档下载收益归作者所有