Windows 服务给出描述:<Failed to read description error code 2>

问题描述 投票:0回答:8

我厌倦了通过注册表卸载禁用的 Windows 服务 它已从注册表中删除,但仍显示在 Services.msc 中 与

描述:无法读取描述错误代码2

c# windows-services
8个回答
23
投票

直觉/你如何到达那里 -

我假设您执行了其中一个或两个操作才出现此错误消息。 a.通过HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services从注册表中手动删除该键并从此处删除服务)

b.此服务处于“自动”启动状态 - 因此删除该服务会在“自动启动”中产生某种误导 - 因此产生此代码 Failed to read description error code 2 。原因如下 - 在执行此操作之前,您应该停止该服务,或将其更改为“手动启动”。

如何修复它以及什么对我有用 -

[1]在管理模式下转到cmd提示符(意味着选择cmd ->“以管理员身份运行”)

您应该位于 "C:/windows/system32/" [如果您处于管理模式,这应该是默认的,如上所述] 输入 -> sfc /scannow 之后,扫描将开始,并且将出现以下日志 --

开始系统扫描。这个过程需要一些时间。

开始系统扫描验证阶段。验证100% 完全的。 Windows 资源保护发现损坏的文件,但 无法修复其中一些。详细信息包含在 CBS.Log 中 Windir\Logs\CBS\CBS.log。例如 C:\Windows\Logs\CBS\CBS.log

系统文件修复更改将在下次重新启动后生效。

[2] 最后重新启动系统!并且该服务将不再出现在 services.msc 中。


13
投票
  1. 使用“以管理员身份运行”打开cmd
  2. 在cmd下运行:
    sc delete "service name which you want to delete"

5
投票

按照这些说明删除服务。确保您使用服务的名称,而不是其显示名称!

此后该服务不应显示在 Services.msc 中,但事件查看器中可能仍有旧项目无法正确显示其描述。


4
投票

此错误表明注册表[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]中的服务描述键被删除,但内存中的服务描述尚未清除。要解决此问题,请重新启动 PC/服务器并重试。


2
投票

对于在这里的任何人,因为他们从注册表中删除了不应该删除的服务,只需重新启动计算机并再次安装该服务就可以了。


1
投票

我还使用 Windows 注册表删除了我的服务。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services]

就我而言,我没有重新启动电脑,我只是重新启动任务管理器,删除的服务就不再存在了。


1
投票

我几乎尝试了上面列出的所有解决方案。最终对我有用的是从任务管理器中删除它。

我正在使用 Apache 的 ProcRun 应用程序将我的 Java 代码包装在 Windows 服务中。而任务管理器中的命令行详细信息有助于识别运行该服务的进程。只需删除该进程即可解决问题!


0
投票

就我而言,我需要包含

.exe
扩展以在
sc
中运行
cmd
命令。

在不使用

sc
扩展的情况下运行
.exe
将不会返回任何输出,也不会删除服务。

我添加了一个

.exe
,命令显示了输出
[SC] DeleteService SUCCESS
并且服务已成功删除。

sc.exe delete "servicename"
© www.soinside.com 2019 - 2024. All rights reserved.