C#创建Windows服务与服务的安装、卸载

 更新时间:2022年02月24日 16:15:12   作者:.NET开发菜鸟  
这篇文章介绍了C#创建Windows服务与服务的安装、卸载,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

Windows 服务(即,以前的 NT 服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这种服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作的其他用户,需要长时间运行功能时使用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。

一、使用C#创建Windows service步骤:

1、文件->新建->项目:选择Windows服务,修改项目名称和位置,然后点击"确定":

2、在默认生成的服务Service1设计界面上右键,选择“属性”,打开属性面板

3、在打开的属性面板中,修改常用属性:

  • Name:后台代码类的名称。
  • AutoLog:设为true,自动将事件写入到Windows的事件日志中,可以在事件查看器中查看日志
  • CanPansuAndContinue:设为True,表示服务可以暂停和继续

4、添加服务安装程序:在Service1的设计界面点右键,选择“添加安装程序”

5、在生成的“ProjectInstaller设计界面”修改属性

5.1 选中serviceProcessInstaller1点右键,选择“属性”,打开serviceProcessInstaller1的属性面板:

Account:指示用来运行此服务的账户类型,默认选择User,修改为高权限的LocalSystem

5.2 选中serviceInstaller1点右键,选择“属性”,打开serviceInstaller1的属性面板

  • ServiceName:在Windows服务里面显示的名称
  • Description:在Windows服务里面显示的描述信息
  • StartType:指示启动此服务的方式和时间 Manual:手动启动 Automatic:自动启动
  • DelayedAutoStart:指示服务是否延时启动,默认false,改为True,则表示服务延时启动

6、重新生成解决方案,Windows服务创建完成。

二、安装和卸载Windows服务

方式一、使用DOS命令行安装:必须以管理员身份运行DOS命令行,否则安装过程中会因为权限的问题导致安装失败。

在命令行下面执行“installutil+生成的可执行文件的路径”的命令进行安装

输入命令以后,按回车,进行安装:

出现此界面表示服务安装成功。在系统服务里面查看新安装的服务:

卸载Windows服务:

在命令行里面输入“installutil /u 可执行文件路径”命令,然后回车

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil /u F:\练习\Windows服务\WindowsServiceDemo\WindowsServiceDemo\bin\Debug\WindowsServiceDemo.exe

在系统服务里面刷新,找不到刚才的MyFirstService服务了。

方式二:使用批处理文件(.bat)安装服务

1、新建txt文本文件。

2、编辑新建的文本文件:

%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe F:\练习\Windows服务\WindowsServiceDemo\WindowsServiceDemo\bin\Debug\WindowsServiceDemo.exe

pause

3、保存文件文件,修改文件后缀名为.bat,重命名文本文件:Install.bat。

使用批处理文件(.bat)卸载服务

1、新建txt文本文件。

2、编辑新建的文本文件:

%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\installutil.exe /u F:\练习\Windows服务\WindowsServiceDemo\WindowsServiceDemo\bin\Debug\WindowsServiceDemo.exe
pause

3、保存文件文件,修改文件后缀名为.bat,重命名文本文件:Uninstall.bat。

注意:执行批处理文件都是以管理员身份运行

方式三:使用vs自带的外部工具安装

1、以管理员身份运行visual studio,打开解决方案,选择菜单栏的“工具”->"外部工具",打开外部工具界面:

2、点击添加,添加安装程序

标题:InstallService

命令:C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe

参数:点击“箭头按钮”,选择目标文件名,注意:选择目标文件名以后要加上文件的扩展文件名

初始目录:点击“箭头按钮”,选择目标文件目录

3、最后的InstallService命令应该是下面这样:

4、点击应用、确定按钮,保存配置。

5、点击菜单栏的工具选项,可以看见新添加的"InstallService"命令

6、点击“InstallService”命令,开始安装,输出界面会显示安装信息:

7、至此,服务安装成功,在系统服务界面可以查看到新安装的服务。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • dotNet中的反射用法入门教程

    dotNet中的反射用法入门教程

    这篇文章主要介绍了dotNet中的反射用法,较为详细的分析了.Net中关于反射的概念,使用方法与相关注意事项,需要的朋友可以参考下
    2016-02-02
  • C#索引器简单实例代码

    C#索引器简单实例代码

    打开.Net Framework源代码随便看几个类,就会发现索引器的影子。索引器可以被重载,可以接收一个或者多个参数,但是不可以定义为静态的。可以用关联数组的方式访问索引器。
    2013-03-03
  • C# VB.NET 实现在Word中嵌入多媒体(视频、音频)文件

    C# VB.NET 实现在Word中嵌入多媒体(视频、音频)文件

    Word中可将Office、PDF、txt等文件作为OLE对象插入到文档中,双击该对象可直接访问或编辑该文件,除了以上常见的文件格式对象,也可以插入多媒体文件,如视频、音频等。本篇文章介绍了通过C#实现在Word中插入多媒体文件。感兴趣的可以学习一下
    2021-12-12
  • c#实现网页图片提取工具代码分享

    c#实现网页图片提取工具代码分享

    c#实现网页图片提取工具代码分享,大家参考使用吧
    2013-12-12
  • C#实现策略模式

    C#实现策略模式

    这篇文章介绍了C#实现策略模式的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#开发教程之ftp操作方法整理

    C#开发教程之ftp操作方法整理

    这篇文章主要介绍了C#开发教程之ftp操作方法整理的相关资料,需要的朋友可以参考下
    2016-07-07
  • 使用C#校验画布签名图片是否为空白

    使用C#校验画布签名图片是否为空白

    这篇文章主要为大家详细介绍了如何使用C#校验画布签名图片是否为空白,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-11-11
  • C#判断一个类是否实现了某个接口3种实现方法

    C#判断一个类是否实现了某个接口3种实现方法

    这篇文章主要介绍了C#判断一个类是否实现了某个接口3种实现方法,本文直接给出实现代码,需要的朋友可以参考下
    2015-06-06
  • c# 如何将字符串转换为大写或小写

    c# 如何将字符串转换为大写或小写

    这篇文章主要介绍了c# 如何将字符串转换为大写或小写,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • 基于WPF实现简单的文件夹比较工具

    基于WPF实现简单的文件夹比较工具

    文件比较平常都是用Beyond Compare,可以说离不开的神器,不过Beyond Compare平常拿它主要是用来做代码比较,用来做一些大批量的二进制文件比较,其实有点不是很方便,所以本文来用WPF做一个简单的文件夹比较的小工具
    2023-05-05

最新评论