如果.NET Windows服务文件不存在,如何卸载该服务?
我使用InstallUtil安装了. net Windows服务。后来我删除了这些文件,但忘了运行
InstallUtil /u
首先,所以服务仍然列在服务MMC中。
我要去登记吗?还是有更好的办法?
如果.NET Windows服务文件不存在,如何卸载该服务?
我使用InstallUtil安装了. net Windows服务。后来我删除了这些文件,但忘了运行
InstallUtil /u
首先,所以服务仍然列在服务MMC中。
我要去登记吗?还是有更好的办法?
当前回答
我们发现,即使运行sc_delete,服务的注册表中仍可能有一个条目,因此重新安装服务会导致一组已损坏的注册表项(它们不匹配)。我们所做的是重新注册,并手动删除这个剩余的条目。
注意:ShipmunkService在sc_delete之后仍然显示!
然后重新安装,您的服务将正常运行。祝你们好运,愿原力与你们同在。
其他回答
我需要重新安装tomcat服务,这意味着首先要删除它。这招对我很管用:
Start a command prompt window using run as administrator
sc query type= service >t.txt
(编辑文件t.txt,在列表中搜索并找到tomcat服务。它叫Tomcat7
sc delete Tomcat7
但是,查询命令第一次没有工作,因为tomcat服务没有运行。它似乎只列出正在运行的服务。我不得不启动服务并再次运行查询命令。
-Windows+r打开cmd。
此代码删除您的服务。
卸载“你的服务路径”此代码卸载你的服务。
如果你想使用一个工具,你可以使用Process Hacker
表单来创建服务:
删除服务的上下文菜单:
我发现Process Hacker是一个比Windows自带的Taskmgr.exe更方便的管理Windows进程和服务的工具。特别是在Windows XP上,你根本不能从任务管理器中访问服务。
第一步:移动到服务所在的目录
命令:cd c:\xxx\yyy\service
第二步:输入以下命令
C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe service.exe \u .exe
这里service.exe是你的服务exe, \u将卸载服务。 您将看到“卸载已完成”消息。
如果你想安装一个服务,在上面的命令中删除\u将安装你的服务
一些人提到sc delete作为答案。我就是这样做的,但是花了一些时间才找到<service-name>参数。
命令sc query type= service(注意,它的格式非常讲究,“service”前面的空格是必要的)将输出已安装的Windows服务的列表,以及它们的限定名称,用于sc delete <service-name>命令。
这个列表相当长,所以你可以考虑将输出输出到一个文本文件(即>> C:\test.txt),然后搜索它。
SERVICE_NAME是与sc delete <service-name>命令一起使用的。