用C#写一个在后台偷偷运行的服务
子夜 2020-11-26 10:00:26


用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#业务代码》,还原检阅!
版权声明
本文为[子夜]所创,转载请带上原文链接,感谢
https://www.seoxiehui.cn/article-267510-1.html
相似文章

2021-08-09