手把手教你写一个windows服务 【基于.net】 附实用小工具{注册服务/开启服务/停止服务/删除服务}
时间:2022-07-24
本文章向大家介绍手把手教你写一个windows服务 【基于.net】 附实用小工具{注册服务/开启服务/停止服务/删除服务},主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1,本文适用范围
语言:.net
服务类型:windows服务,隔一段时间执行
2,服务搭建:
1,在vs中创建 console程序
2,在console项目所在类库右键 添加-新建项-选择Windows服务
3,在programs.cs的main中增加
ServiceBase[] services = new ServiceBase[] { new MyModule1() };
ServiceBase.Run(services);
4,在MyModule1.cs中增加私有属性timeGap,在构造函数中增加:
this.timeGap = new System.Timers.Timer();
timeGap.Interval = 10000;//设置服务的执行间隔为10秒
timeGap.Elapsed += timeGap_Elapsed;
5,在 timeGap_Elapsed(object sender, System.Timers.ElapsedEventArgs e) 事件中编写服务需要执行的动作
比如给一个文件中写入 当前时间:
6,在开启服务和停止服务的时候打开关闭计时器:
7,注册服务:
在项目中增加一个文件夹
在文件夹中增加注册服务,启动服务,停止服务,需要的脚本
上图就是注册服务为测试服务的脚本,不要慌,后边有完整demo的下载链接
写了一个小工具用于快速执行相关脚本如下图,也一并放入demo中
工具介绍:右键按钮修改脚本,如果脚本文件不存在则新建脚本文件
附件地址:
链接:https://pan.baidu.com/s/1E68xrh60W5qEantpLSiUlg 提取码:20fk
- jboss eap 6.3 域(Domain)模式配置
- 揭穿数据分析的12个神话
- jboss eap 6.3 集群(cluster)配置
- Django中Q查询及Q()对象
- jboss eap 6.3 集群(cluster)-Session 复制(Replication)
- JSP中的Servlet及Filter
- Django ORM详解
- Web前端培训:怎样成长为一个优秀的Web 前端开发工程师?
- Git操作
- 人工智能做的肉,你想吃吗?
- 二、爬虫基础库
- 鱼与熊掌兼得,既要云服务创新也要管理传统网络
- Django-model进阶(中介模型,查询优化,extra,整体插入)
- flask-session组件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- deepin使用
- 解决deepin下安装sqlite3依赖过新的问题
- PyQt5 技术篇-调用文件对话框获取文件、文件夹路径。文件对话框返回选中的多个文件路径
- deepin安装golang
- PyQt5 技术篇-调用输入对话框(QInputDialog)获取用户输入内容。
- Python+selenium 自动化-通过窗口名切换窗口,如何获取当前窗口的title窗口名
- deepin 任务栏消失问题
- PyQt5 技术篇-调用消息对话框(QMessageBox)进行简单提示!
- composer改源
- Android内存管理(四)Linux的内存管理机制
- JavaScript 技术篇-js通过xpath获取dom节点,js校验xpath唯一性。
- Python 错误使用tuple问题:TypeError: 'tuple' object does not support item assignment. 原因及解决办法
- E-BERT,电商领域语言模型优化实践
- PyQt5 技术篇-透明窗口设置方法,窗口透明度的设置
- 为hexo增加gitalk评论系统