引用地址:

https://docs.microsoft.com/zh-cn/dotnet/framework/windows-services/how-to-create-windows-services

手动安装你的服务

  1. 在 Windows“启动”菜单或“启动”屏幕上,依次选择“Visual Studio”、“Visual Studio Tools”、“开发人员命令提示”。

    出现 Visual Studio 命令提示。

  2. 访问你的项目的已编译可执行文件所在的目录。

  3. 以你的项目的可执行文件作为参数,通过命令提示运行 InstallUtil.exe:

    installutil <yourproject>.exe

    如果使用 Visual Studio 命令提示,InstallUtil.exe 应该在系统路径上。 如果不在,你可以将其添加到该路径,或使用完全限定的路径来调用它。 此工具随 .NET Framework 安装,其路径为 %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>

  4. 例如,对于 32 位版本的 .NET Framework 4 或 4.5.*,如果你的 Windows 安装目录为 C:\Windows,则该路径为 C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe

  5. 对于 64 位版本的 .NET Framework 4 或 4.5.*,默认路径为 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe

  也可使用bat文件做启动:

    如果启动service.exe程序为服务

    1. 创建bat文件

    2. 写入以下内容

     C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil  "%cd%"service.exe

    net start service.exe

手动卸载你的服务

  1. 在 Windows“启动”菜单或“启动”屏幕上,依次选择“Visual Studio”、“Visual Studio Tools”、“开发人员命令提示”。

    出现 Visual Studio 命令提示。

  2. 以你的项目的输出作为参数,通过命令提示运行 InstallUtil.exe:

    installutil /u <yourproject>.exe
  3. 有时,服务的可执行文件被删除后,该服务可能仍然会出现在注册表中。 这种情况下,请使用命令 sc delete 从注册表中删除服务的条目。

更多参考:https://docs.microsoft.com/zh-cn/dotnet/framework/windows-services/how-to-create-windows-services

C#创建windows服务(二:创建和卸载windows服务)的更多相关文章

  1. Windows服务二:测试新建的服务、调试Windows服务

    一.测试Windows服务 为了使Windows服务程序能够正常运行,我们需要像创建一般应用程序那样为它创建一个程序的入口点.像其他应用程序一样,Windows服务也是在Program.cs的Main ...

  2. 如何卸载windows的服务?卸载服务?

    前面小编给大家介绍过如何禁用一些不需要的服务: 但是哪些多余的服务其实完成时可以直接卸载掉的: 所以今天小编将指导大家如何卸载一些不需要的服务: 切记请一定要确认卸载的是不需要的服务哦: 工具/原料 ...

  3. 【C#】使用bat文件安装卸载Window服务

    1.安装服务 @echo off @title 安装windows服务path %SystemRoot%\Microsoft.NET\Framework\v4.0.30319echo========= ...

  4. C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载(极速,简洁)

    本文首发于:码友网--一个专注.NET/.NET Core开发的编程爱好者社区. 文章目录 C#/.NET基于Topshelf创建Windows服务的系列文章目录: C#/.NET基于Topshelf ...

  5. C# Windows Service服务的创建和调试

    前言 关于Windows服务创建和调试的文章在网络上的很多文章里面都有,直接拿过来贴在这里也不过仅仅是个记录,不会让人加深印象.所以本着能够更深刻了解服务项目的创建和调试过程及方法的目的,有了这篇记录 ...

  6. C# Windows服务的创建、安装、调试

    一.查看已有的Windows服务 选择菜单"开始"-〉"控制面板"-〉"管理工具"-〉"服务"来查看现有系统中的服务 二 ...

  7. C# windows服务的创建与调试

    Windows Service这一块并不复杂,但是注意事项太多了,网上资料也很凌乱,偶尔自己写也会丢三落四的.所以本文也就产生了,本文不会写复杂的东西,完全以基础应用的需求来写,所以不会对Window ...

  8. Windows Service 学习系列(二):C# windows服务:安装、卸载、启动和停止Windows Service几种方式

    一.通过InstallUtil.exe安装.卸载.启动.停止Windows Service 方法一 1.以管理员身份运行cmd 2.安装windows服务 切换cd C:\Windows\Micros ...

  9. 【转】C# windows服务的创建与调试

    Windows Service这一块并不复杂,但是注意事项太多了,网上资料也很凌乱,偶尔自己写也会丢三落四的.所以本文也就产生了,本文不会写复杂的东西,完全以基础应用的需求来写,所以不会对Window ...

  10. 玩转Windows服务系列——创建Windows服务

    创建Windows服务的项目 新建项目->C++语言->ATL->ATL项目->服务(EXE) 这样就创建了一个Windows服务项目. 生成的解决方案包含两个项目:Servi ...

随机推荐

  1. Ubuntu系统---安装English版本之后的一些工作

                                                                      Ubuntu系统---安装English版本之后的一些工作 安装完U ...

  2. ndk学习之C语言基础复习----虚拟内存布局与malloc申请

    在这一次中来学习一下C语言的内存布局,了解它之后就可以解释为啥在用malloc()申请的内存之后需要用memset()来对内存进行一下初始化了,首先来了解一下物理内存与虚拟内存: 物理内存:通过物理内 ...

  3. bcb ole拖拽功能的实现

    最近项目中用到了OLE 拖拽功能 和BCB 一个Form的Drag 不同的是,只有实现了OLE 拖拽才能,从其他程序拖拽数据到Form 下面的代码实现了,同HTML网页拖拽到Form时,Form获得H ...

  4. Python中的基本类型简介

    1.变量 变量不仅可以是数字,还可以是任意数据类型 命名规范:变量是用一个变量名表示,变量名必须是大小写英文.数字和下划线_的组合,且不能用数字开头 python中等号“=”是赋值语句,可以把任意数据 ...

  5. sublimetext插件自定义respository

    官方文档(https://packagecontrol.io/docs/submitting_a_package) 上面说明了插件可以按两种方式挂起,一种是github,一种是ssl认证的web服务器 ...

  6. keil结合st-link使用SWO的两种调试方法笔记

    通过strongerHuang的教程,实现了SWO的两种调试方法, 1.在keil调试的过程中,使用debug printf viewer打印信息, 2.在STM32 ST-LINK Utility中 ...

  7. docker的网络服务

    docker提供 网络服务,主要通过两种方式: 1.外部访问 2.容器互联 通过外部访问Docker容器,主要通过端口映射的方式. [root@docker ~]# docker run -t -P ...

  8. 配置阿里yum源

    root@docker ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/epel-7.rep ...

  9. PHP mysqli_connect_error() 函数

    返回上一次连接错误的错误描述: <?php $con=mysqli_connect("localhost","wrong_user","my_p ...

  10. setsockopt函数

    #include <sys/socket.h>     int setsockopt( int socket, int level, int option_name,            ...