参照示例搭建一个Quertz + Topshelf的一个作业调度服务(基础)
学习网址:Quartz.NET 入门、使用Topshelf创建Windows服务 来自七七资料
1、直接下载源码
2、配置完成后,安装服务测试应用。
以下是遇到情况和加入的一些内容
1、在进行服务安装的时候提示‘xxx服务, service can only be installed as an administrator’
处理方式:右击生成服务 xxx.exe->属性->兼容性,勾选以 ‘管理员身份运行此程序’
再次安装服务成功通过!
2、编写几个批处理文件,用于快速安装、启动、查看、停止、卸载服务。
将生成的批处理文件设置成始终复制。右击文件->属性->复制到输出目录,选择 ‘始终复制’。
然后在生成的bin\debug下能看到,直接点击批处理文件安装卸载等操作
脚本代码分别如下:
安装服务
@echo off echo 注意‘服务名称’与服务 '*.exe'的差别
set SvcName=QuartzDemo.exe echo 安装服务%SvcName%
%~dp0\%SvcName% install echo 启动服务%SvcName%
%~dp0\%SvcName% start echo.
pause
查看服务
@echo off echo 注意‘服务名称’与服务 '*.exe'的差别 set SvcName=QuartzDemo服务名称
echo Service state: %SvcName%
sc query %SvcName% echo.
pause
启动服务
@echo off echo 注意‘服务名称’与服务 '*.exe'的差别
set SvcName=QuartzDemo.exe echo 启动服务%SvcName%
%~dp0\%SvcName% start echo.
pause
停止服务
@echo off echo 注意‘服务名称’与服务 '*.exe'的差别
set SvcName=QuartzDemo.exe echo 停止服务%SvcName%
net stop %SvcName% echo.
pause
卸载服务
@echo off echo 注意‘服务名称’与服务 '*.exe'的差别
set SvcName=QuartzDemo.exe echo 卸载服务%SvcName%
%~dp0\%SvcName% uninstall echo.
pause
源码下载:儿时精神-Easyman.Quertz
PS下批处理文件编写一些说明:链接
命令:Echo
功能:回显,打开或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。
语法:echo [{on|off}] [message]
参数
{on | off}
指定是否打开命令回显功能。
message
指定要在屏幕上显示的文本。
/?
在命令提示符显示帮助。
注释:
当回显关闭时可以使用 echo message 命令。要显示几行长的消息而不显示其他命令,可以在批处理程序的 echo off 命令后包含几个 echo message 命令。
如果使用 echo off,屏幕上就不会出现命令提示符。要显示命令提示符,请键入 echo on。
要避免回显某行,请在批处理程序中的命令前面插入 at 符号 (@)。
要在屏幕上回显空白行,请键入:
echo.
当使用 echo 命令时,要显示管道 (|) 或重定向字符(< 或 >),请在管道 (|) 或重定向字符(例如,^>、^< 或 ^|)的前面使用脱字符 (^)。如果需要使用脱字符 (^),请键入两个脱字符 (^^)。
范例:
以下范例显示的批处理程序包含前后各有一个空行的三行消息:
echo off
echo.
echo This batch program
echo formats and checks
echo new disks
echo.
如果要关闭回显并且不需要回显 echo 命令,请在命令之前包含 at 符号 (@),如下所示:
@echo off
在相同命令行上可以使用 if 和 echo 命令,如下所示:例如:
if exist *.rpt echo The report has arrived.
最新文章
- window 配置wnmp(转下整理 ,全)
- MySQL 第九天(核心优化三)
- mysql中IFIND_IN_SET和like的区别
- HDFS源码分析:NameNode相关的数据结构
- strong和copy的区别
- Measuring Signal Similarities
- Linux系统下如何修改主机名
- [转载] HTTP协议状态码详解(HTTP Status Code)
- AngularJs学习笔记3-服务及过滤器
- day22 面向对象
- Mysql复制一个数据库到另一个数据库
- Git+Gitlab+Ansible剧本实现一键部署动态网站(二)--技术流ken
- bzoj 3529
- (转)在JAVA实现DataTable对象(三)——DataTable对象实现
- Entity FrameWork(实体框架)是以ADO.NET Entity FrameWork ,简称为EF
- CentOS下安装高版本GCC
- 迷你MVVM框架 avalonjs 学习教程21、双向绑定链
- Jmeter参数化HTTP request中Send Files With The Request的文件路径和文件名
- 回去看linux的指令2
- 【转】Jmeter变量参数化及函数应用
热门文章
- 关于latex编译中文不显示问题的解决方法。
- Unable to open debugger port (127.0.0.1:63777): java.net.BindException ";Address
- <;Android开源库>; PagerSlidingTabStrip从头到脚
- Everything实用技巧随手记
- WOSA/XFS PTR Form解析库—FormRule.h
- 通过 Cobalt Strike 利用 ms14-068
- Android--用JS去控制WebView显示的字体的大小
- 基于MD5的增强型摘要算法
- LeetCode题解之Copy List with Random Pointer
- Oracle EBS PO rcv_shipment_headers 数据缺失