我尝试用sc delete <服务名>删除一个Windows服务,并遇到以下错误:

[SC] DeleteService FAILED 1072: 指定的服务已标记为删除。

我已经做了:

Stopped the service, obviously. The sc queryex "<service name>" gives the following result: SERVICE_NAME: Stub service TYPE : 10 WIN32_OWN_PROCESS STATE : 1 STOPPED WIN32_EXIT_CODE : 1067 (0x42b) SERVICE_EXIT_CODE : 0 (0x0) CHECKPOINT : 0x0 WAIT_HINT : 0x0 PID : 0 FLAGS : Ensured that Microsoft Management Console is closed (taskkill /F /IM mmc.exe), Ensured that Event Viewer is closed, Removed the key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<service name> from the registry. Due to this removal, services.msc still shows the service (with a name, but no status or startup type), but the description is “<Failed to Read Description. Error Code: 2 >”. When attempting to view the properties, “The system cannot find the file specified.” is shown five times.

问题依然存在。

下一步是什么?


当前回答

在我的情况下,这是由创建eventLog源时未处理的异常引起的。使用try catch来确定原因。

其他回答

这意味着服务在services.msc中仍然被列为禁用。 只要关闭服务。MSC并以管理员身份重新打开… 该服务将不会被列出。现在,使用命令安装服务,

安装“服务路径”

这对我很有用。

打开任务管理器 选择服务选项卡 选择有问题的服务 右键单击并选择“查看详细信息” 右键单击该服务并选择“结束流程树”

结束流程树将结束该流程以及该流程创建的所有流程。

然后重新安装服务。

出现错误的主要原因是进程没有停止。 要解决这个问题,启动任务管理器,转到服务,看看你是否还能看到你的服务,然后转到该服务的进程,结束进程。这样问题就完全解决了。

发现还有一件事要检查-在任务管理器中查看-如果其他用户连接到这个框,即使他们是“断开连接”,你也必须实际签出他们才能让服务最终删除。

关闭当前打开的每个窗口,然后运行以下命令解决了我的问题:

taskkill /F /IM mmc.exe