有你在真好 的个人博客
用C#写一个在后台偷偷运行的服务
阅读:2324 添加日期:2021/3/27 23:16:54 原文链接:https://www.toutiao.com/item/6897581794309194243/
用C#写一个在后台偷偷运行的服务

都是套路


在上一篇文章《居然有一种默默无闻的程序叫服务》中,我们简单介绍了Windows服务。


今天我们用C#来写一个Windows的后台服务。完成服务的编写,编译,安装及启动,跑通Windows服务开发的基本套路。

编写一个服务

我们使用VS 2019,来编写服务:


用C#写一个在后台偷偷运行的服务

打开VS->创建项目


用C#写一个在后台偷偷运行的服务

找到服务->下一步


用C#写一个在后台偷偷运行的服务

输入服务基本信息->创建


用C#写一个在后台偷偷运行的服务

创建之后的文件列表


用C#写一个在后台偷偷运行的服务

将服务重命名为MyService1


用C#写一个在后台偷偷运行的服务

为服务添加安装模块

必须为服务添加安装程序,并且配置好服务的名称等基本信息,服务才能正常安装。


用C#写一个在后台偷偷运行的服务

添加安装模块之后的文件列表


用C#写一个在后台偷偷运行的服务

修改服务类型


用C#写一个在后台偷偷运行的服务

修改相关服务类型

我们暂时使用LocalService,后面再为大家讲解其他类型的服务,以及不同服务之间的区别。

用C#写一个在后台偷偷运行的服务

修改相关服务信息


用C#写一个在后台偷偷运行的服务

修改相关服务信息


编译服务


用C#写一个在后台偷偷运行的服务

右键->生成

右键我们的项目,点击生成即可


安装并启动服务

安装服务,我们需要使用到一个安装工具:installutil。这个工具在VS2019中已经默认安装了。

我们在VS2019中打开Power Shell:


用C#写一个在后台偷偷运行的服务

进入Debug目录:


用C#写一个在后台偷偷运行的服务


cd .\TestService\bin\Debug\

然后执行安装命令:

installutil .\TestService.exe

用C#写一个在后台偷偷运行的服务

安装成功,并可以启动服务


用C#写一个在后台偷偷运行的服务

安装成功,并可以启动服务

用C#写一个在后台偷偷运行的服务

服务启动成功

服务卸载

卸载的命令,在安装的命令基础上,加上参数 /u 即可,命令为:

installutil .\TestService.exe /u

用C#写一个在后台偷偷运行的服务

卸载服务

服务卸载成功之后,服务列表中,将看不到我们的服务了。

同时在卸载服务的时候,会自动停止服务。


感谢您看到这里!

如果您跟着我一步一步操作到这里,那么恭喜您,您已经走完了Windows服务开发的基本套路。

下期预告

服务进阶:

如何在服务中执行业务代码?

如何调试服务?

服务如何支持暂停/恢复?

以及其他服务的高级开发秘籍!

敬请期待。。。


下一篇文章《在服务中默默地执行C#业务代码》,欢迎检阅!

ICP备案号:苏ICP备14035786号-1 苏公网安备 32050502001014号