C# 创建Windows服务

时间:2024-01-06 19:33:02
  1. 创建windows服务项目

     C# 创建Windows服务
  2. 2

    右键点击Service1.cs,查看代码, 用于编写操作逻辑代码

    C# 创建Windows服务
  3. 3

    代码中OnStart用于执行服务事件,一般采用线程方式执行方法,便于隔一段事件执行一回

    C# 创建Windows服务
    END

安装服务配置

  1. 1

    打开Service1.cs视图界面

    C# 创建Windows服务
  2. 2

    在视图内右键-->添加安装程序

    C# 创建Windows服务
  3. 3

    项目中添加了ProjectInstaller.cs文件,该文件中视图自动会添加俩个组件

    serviceProcessInstaller1

    serviceInstaller1

    C# 创建Windows服务
  4. 4

    选中serviceProcessInstaller1组件,查看属性,设置account为LocalSystem

    C# 创建Windows服务
  5. 5

    选中serviceInstaller1组件,查看属性

    设置ServiceName的值, 该值表示在系统服务中的名称

    设置StartType, 如果为Manual则手动启动,默认停止,如果为Automatic为自动启动

    设置Description,添加服务描述

    C# 创建Windows服务
  6. 6

    重新生成项目

    END

安装服务

  1. C# 创建Windows服务===》以管理员的身份运行

    C# 创建Windows服务
  2. 输入 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319 回车

    切换当前目录,此处需要注意的是,在C:\Windows\Microsoft.NET\Framework目录下有很多类似版本,具体去哪个目录要看项目的运行环境,例 如果是.net framework2.0则需要输入 cd C:\Windows\Microsoft.NET\Framework\v2.0.50727

    C# 创建Windows服务
  3. 3.1:首先要将InstallUtil.exe拷贝到E:\TestApp\Winform\WinServiceTest\WinServiceTest\bin\Debug\文件夹下,该文件夹表示项目生成的exe文件位置

    3.2:C:\Windows\Microsoft.NET\Framework\v2.0.50727里有InstallUtil.exe此文件

    3.3:输入 InstallUtil.exe E:\TestApp\Winform\WinServiceTest\WinServiceTest\bin\Debug\WinServiceTest.exe 回车

    说明:E:\TestApp\Winform\WinServiceTest\WinServiceTest\bin\Debug\WinServiceTest.exe表示项目生成的exe文件位置

    4.4:C# 创建Windows服务若是出现此问题,解决方法同3.1、3.2

    C# 创建Windows服务
  4. 打开服务,就可以看到已经安装的服务了

    C# 创建Windows服务
    END

卸载服务

  1. 1

    卸载很简单,C# 创建Windows服务===》以管理员的身份运行, 直接输入 sc delete WinServiceTest便可

    END

注意事项

  • 使用调试或者双击exe文件时无法启动服务的

  • win7系统打开cmd时一定要使用管理员方式打开

    cmd命令行(以管理员的身份运行)---进行Windows服务操作

    1、安装服务
    sc create EcomWinService binPath= "C:\Users\admin.admin-PC\Desktop\ECOM\Ecom.WinService\bin\Debug\Ecom.WinService.exe"

    注:EcomWinService是服务名,"C:\Users\admin.admin-PC\Desktop\ECOM\Ecom.WinService\bin\Debug\Ecom.WinService.exe"是服务所在的路径
    注:服务名:指创建的Windows服务名

    binPath:指Windows服务程序的路径

    2、配置服务
    sc config EcomWinService start=AUTO
    注:start=AUTO (自动)

    start=DEMAND (手动)

    start=DISABLED (禁用)

    3、开启服务
    net start EcomWinService
    4、关闭服务
    net stop EcomWinService
    5、删除服务
    sc delete EcomWinService