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

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

 InstallUtil /u

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

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


当前回答

我需要重新安装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 8中使用“sc delete”的注意事项:

1)以提升权限打开CMD窗口。[Windows Key-X弹出带有选项的菜单;选择“命令提示符(管理员)”。] 2)在服务中使用列表中的插入名称[例如,我使用“sc delete gupdate”,而在服务中,它读为“谷歌Update (gupdate)”]

通过注册表删除Windows服务

如果你知道正确的路径,很容易从注册表中删除服务。以下是我的做法:

执行Regedit或Regedt32 打开注册表项“HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services” 寻找要删除的服务并删除它。您可以查看这些键来了解服务正在使用哪些文件,并在必要时删除它们。

通过命令窗口删除Windows服务

您也可以使用命令提示符删除服务,如下所示:

sc删除

还可以使用以下命令创建服务

sc create "MorganTechService" binpath= "C:\Program Files\MorganTechSPace\myservice.exe"

注意:您可能必须重新启动系统才能在服务管理器中更新列表。

-Windows+r打开cmd。

此代码删除您的服务。

卸载“你的服务路径”此代码卸载你的服务。

你至少有三个选择。我已经按照使用偏好的顺序列出了它们。

方法1 -您可以使用资源工具包中的SC工具(SC .exe)。 (Windows 7/8附带)

打开命令提示符并输入

sc delete <service-name>

工具帮助片段如下:

DESCRIPTION:
        SC is a command line program used for communicating with the
        NT Service Controller and services.

delete----------Deletes a service (from the registry).

方法2 -使用delserv

下载并使用delserv命令行实用程序。这是为Windows 2000开发的遗留工具。在当前的windows XP盒子中,这被方法1中描述的sc所取代。

方法3 -手动删除注册表项(注意这在Windows 7/8中适得其反)

Windows服务在以下注册表项下注册。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

在引用键下搜索具有服务名称的子键并删除它。(并且您可能需要重新启动才能从Services列表中完全删除该服务)

在以管理员模式运行的命令提示符中,使用Windows的"sc.exe"实用程序。你会运行这样的程序:

sc delete <service-name>

如果服务名有一个或多个空格,则用双引号括起来(h/t @geoffc):

sc delete "<service-name>"