架构师_程序员_码农网

用户名  找回密码
 注册[Register]

QQ登录

只需一步,快速开始

搜索
查看: 18424|回复: 3

[控制台程序] C#定时执行任务之Topshelf的使用

[复制链接]
发表于 2019-4-27 21:28:16 | 显示全部楼层 |阅读模式
前言

继上一篇的Windows服务的创建,本篇将会记录Windows服务更简单的创建方法。使用Topshelf第三方插件。
环境&工具

>Windows10系统

>VS 2017

正文

1:新建一个控制台应用程序。

2:在NuGet里面安装“Topshelf”,并引用。也可以点击链接下载(https://down.itsvse.com/item/12371.html

3:贴入以下代码:



3.png


4:F5运行程序,可以看到每隔一秒钟,输出一行。

4.png


5:在第六行,写了 Ctrl +C 能退出。这样我们就停止了。

5.png


安装服务

前面我们已经用Topshelf实现了定时任务。下面我们来安装成服务。

1:代码部分,可以参考上一篇。在start() stop()方法里面,记录信息。这样在接来的安装里面,能更直观的看到程序运行的情况。

2:首先用管理员的身份打开CMD。再用命令行切到程序运行的目录(“bin\Debug”)下。



2-2-1.png


3:开始安装服务呐。命令行输入“TopshelfDemo.exe install”——>回车。



2-3-1.png

4:上图可以看到安装成功了。现在开始启动服务,输入“TopshelfDemo.exe start”——>回车。



2-4-1.png

5:上图可以看到服务启动成功了。Topshelf有一个特性,就是可以使用多个不同的名称部署同一个实例。

接着输入“TopshelfDemo.exe –instance “newinstallname” install”——>回车。




2-5-1.png

启动这个新名称的服务,输入“TopshelfDemo.exe –instance “newinstallname” start”——>回车。


6:上图可以看到第二个实例也安装成功了。现在我们查看一下服务状态。

2-6-1.png

可以看到该服务,启动了两个实例。

7:停止服务  输入“TopshelfDemo.exe stop”——>回车。


2-7-1.png

卸载服务 输入“TopshelfDemo.exe uninstall”——>回车。


2-7-2.png


8:卸载 第二次安装的实例 语法类似 命令行分别为:


尾声

Topshelf搭配Quartz.Net做定时服务效果更佳哦。





上一篇:C#定时执行任务之Windows服务
下一篇:精通高级RxJava 2响应式编程思想
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2019-4-30 00:08:19 来自手机 | 显示全部楼层
哇,肥婵你好棒哦,我半夜三更还跟你水贴子
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2019-4-30 15:19:53 来自手机 | 显示全部楼层
玖拾呀 发表于 2019-4-30 00:08
哇,肥婵你好棒哦,我半夜三更还跟你水贴子

噗。。大半夜不睡,看技术贴?
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2019-5-14 18:33:13 | 显示全部楼层
空蝉如此世 发表于 2019-4-30 15:19
噗。。大半夜不睡,看技术贴?

那是肯定的,毕竟你是榜样吗
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2025-5-31 13:11

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表