如果.NET Windows服务文件不存在,如何卸载该服务?

我使用InstallUtil安装了. net Windows服务。后来我删除了这些文件,但忘了运行

 InstallUtil /u

首先,所以服务仍然列在服务MMC中。

我要去登记吗?还是有更好的办法?


当前回答

如果你想使用一个工具,你可以使用Process Hacker

表单来创建服务:

删除服务的上下文菜单:

我发现Process Hacker是一个比Windows自带的Taskmgr.exe更方便的管理Windows进程和服务的工具。特别是在Windows XP上,你根本不能从任务管理器中访问服务。

其他回答

你可以通过命令提示符卸载你的windows服务,也可以只写这段命令

cd\                                                                   

cd C:\Windows\Microsoft.NET\Framework\v4.0.30319(or version in which you developed your service)                                           

installutil c:\\xxx.exe(physical path of your service) -d

最简单的方法是使用Sys Internals Autoruns

在管理模式下启动它,然后可以通过删除键删除过时的服务

第一步:移动到服务所在的目录

命令:cd c:\xxx\yyy\service

第二步:输入以下命令

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe service.exe \u .exe

这里service.exe是你的服务exe, \u将卸载服务。 您将看到“卸载已完成”消息。

如果你想安装一个服务,在上面的命令中删除\u将安装你的服务

我需要重新安装tomcat服务,这意味着首先要删除它。这招对我很管用:

Start a command prompt window using run as administrator

sc query type= service >t.txt

(编辑文件t.txt,在列表中搜索并找到tomcat服务。它叫Tomcat7

sc delete Tomcat7

但是,查询命令第一次没有工作,因为tomcat服务没有运行。它似乎只列出正在运行的服务。我不得不启动服务并再次运行查询命令。

您可以尝试运行Autoruns,这将使您不必手动编辑注册表。当您没有所需的权限时,这尤其有用。