学习网址: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.

最新文章

  1. window 配置wnmp(转下整理 ,全)
  2. MySQL 第九天(核心优化三)
  3. mysql中IFIND_IN_SET和like的区别
  4. HDFS源码分析:NameNode相关的数据结构
  5. strong和copy的区别
  6. Measuring Signal Similarities
  7. Linux系统下如何修改主机名
  8. [转载] HTTP协议状态码详解(HTTP Status Code)
  9. AngularJs学习笔记3-服务及过滤器
  10. day22 面向对象
  11. Mysql复制一个数据库到另一个数据库
  12. Git+Gitlab+Ansible剧本实现一键部署动态网站(二)--技术流ken
  13. bzoj 3529
  14. (转)在JAVA实现DataTable对象(三)——DataTable对象实现
  15. Entity FrameWork(实体框架)是以ADO.NET Entity FrameWork ,简称为EF
  16. CentOS下安装高版本GCC
  17. 迷你MVVM框架 avalonjs 学习教程21、双向绑定链
  18. Jmeter参数化HTTP request中Send Files With The Request的文件路径和文件名
  19. 回去看linux的指令2
  20. 【转】Jmeter变量参数化及函数应用

热门文章

  1. 关于latex编译中文不显示问题的解决方法。
  2. Unable to open debugger port (127.0.0.1:63777): java.net.BindException &quot;Address
  3. &lt;Android开源库&gt; PagerSlidingTabStrip从头到脚
  4. Everything实用技巧随手记
  5. WOSA/XFS PTR Form解析库—FormRule.h
  6. 通过 Cobalt Strike 利用 ms14-068
  7. Android--用JS去控制WebView显示的字体的大小
  8. 基于MD5的增强型摘要算法
  9. LeetCode题解之Copy List with Random Pointer
  10. Oracle EBS PO rcv_shipment_headers 数据缺失