2011-03-18 56 views
6

我需要卸载我已经创建了一个Windows服务,但我得到在Windows中使用“卸载或更改程序”计划这个错误:无法卸载Windows服务:“...无法删除,因为它等于日志名称。”

错误。 卸载时发生异常。这个例外将被忽略, 将被忽略,并且卸载将会继续 。但是, 卸载完成后可能没有完全卸载应用程序 。 - > 事件日志源'111我的服务' 无法删除,因为它等于 到日志名称。

然后我点击“确定”,程序仍然列在已安装程序列表中。更糟的是,我无法安装它的新版本。 Windows安装程序说该产品的另一个版本已经安装,我应该先卸载它。我如何摆脱这个程序?

更新这是当我运行InstallUtil.exe/u命令时发生的情况。

卸载开始。请参阅 C:\ MyService.MyService的日志文件的 内容。大会的进展。文件 位于 C:\ MyService.MyService.InstallLog。 卸载程序集 'C:\ MyService.MyService.exe'。影响 参数是:logtoconsole =
assemblypath = C:\ MyService.exe
日志= C:\ MyService.MyService.InstallLog 卸下事件日志源111我 服务。 卸载 System.Diagnostics.EventLogInstaller 安装程序时发生异常。 System.InvalidOperationException: 事件日志源'111我的服务' 无法删除,因为它等于 到日志名称。卸载时发生异常 。此例外 将被忽略,卸载将继续 。但是,应用程序 可能未完全卸载l是 已完成。

卸载已完成。卸载时发生了一个 异常。 此例外情况将被忽略,并且 卸载将继续。但是, 应用程序可能不完全是 uninstalle l已完成。

回答

17

尝试在CMD执行下一个命令:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /u "c:\myservice.exe" 

第二个选项是:

sc delete <service name> 

这条线上面可以尝试删除服务分公司,以及在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services后。

+0

我试过了。同样的信息。 – 2011-03-18 15:19:17

+0

sc确实将它从“服务”列表中删除。然后我删除了HKEY_LOCAL_MACHINE ... SOFTWARE下的注册表,它已经设置好了。但它仍然注册了一个版本被安装。 – 2011-03-18 20:40:21

+2

您的sc delete <服务名称>救了我 - 谢谢! – Rob 2015-07-27 23:34:58

0

这只是发生在我身上,上述解决方案无法在您运行InstallUtil.exe或删除服务的情况下运行。我最初使用“LocalSystem”安全上下文建立了我的服务,并且已经安装了它。后来我将安全上下文更改为“用户”并重新编译了服务可执行文件,并尝试卸载旧服务。这里描述的错误消息即将出现,一旦我将安全上下文更改回“LocalSystem”,我可以完全卸载。

换句话说,您可能想要使用它创建的可执行文件卸载旧服务,而不是使用可更改的新服务。

-1

The accepted answer没有为我工作。

工作原理是在管理员模式下打开注册表并找到该服务并将其删除。

1

我有完全相同的问题(并没有在selected answer worked)。

令人惊讶的是,什么修复问题是(使用标准的“卸载或更改程序”或“程序和功能”窗口对话框)右键单击该程序并选择修复(显然成功),然后卸载。

+0

谢谢!这个对我有用。我不知道“修复”这个东西是有用的。 :d – 2018-03-01 08:57:10