无法卸载Windows服务:“…无法删除,因为它等于日志名称。”

我需要卸载我创建的Windows服务,但是我在Windows中使用“卸载或更改程序”程序得到此错误:

错误。 卸载时发生exception。 此exception将被忽略,卸载将继续。 但是,卸载完成后可能无法完全卸载应用程序。 – >无法删除事件日志源“111 My Service”,因为它等于日志名称。

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

更新这是我在其上运行InstallUtil.exe / u命令时发生的事情。

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

卸载已完成。 卸载时发生exception。 此exception将被忽略,卸载将继续。 但是,应用程序可能无法完全卸载l已完成。

尝试在cmd中执行下一个命令:

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

第二种选择是:

 sc delete  

运行上面的行之后,您可以尝试在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services删除服务分支。

我有完全相同的问题( 所选答案中没有任何内容有效 )。

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

这恰好发生在我身上,上面的解决方案在运行InstallUtil.exe或删除服务的地方不起作用。 我最初使用“LocalSystem”安全上下文设置了我的服务,并且随之安装了它。 我后来将安全上下文更改为“User”并重新编译服务可执行文件并尝试卸载旧服务。 这里描述的错误消息即将出现,一旦我将安全上下文更改回“LocalSystem”,我就可以完全卸载了。

换句话说,您可能希望使用创建的可执行文件卸载旧服务,而不是使用可能修改的较新服务。

接受的答案对我不起作用。

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