微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

windows-services – 安装Windows服务的问题

我在安装 Windows服务时遇到问题.我安装和卸载了多次服务(installutil ….. installutil / u)没有任何问题,但出现了问题,现在当我尝试安装时,我收到下面列出的错误消息.我检查了计算机管理控制台,服务CIMediator没有出现在服务列表中.如何删除该服务?

System.ArgumentException:源CIMediator已存在于本地计算机上.

解决了同样的问题,也是经过多次卸载/安装/重启后.
我有自己的服务安装程序实现(派生自[System.Configuration.Install.Installer] [1]),我已经指定了应用程序EventLog如下:
public ProjectInstaller()
    {
        InitializeComponent();

        EventLogInstaller installer = FindInstaller(this.Installers);
        if (installer != null)
        {
            installer.Log = "MyService";                 
        }
    }

您可能具有以下方式实现的相同功能([MSDN:EventLog.CreateEventSource方法] [2]):

if(!EventLog.sourceExists("MySource"))
{
    EventLog.CreateEventSource("MySource","MyNewLog");
}

在我的情况下,在一些安装过程中,EventLog成功创建,但在卸载过程中出现了问题,并且没有删除EventLog(虽然它没有在EventViewer中显示,但它仍然存在于注册表中).
所以错误“MyService已经存在于本地计算机上”,显然是关于EventLog的错误,而不是服务本身.

您可以尝试执行以下操作:

转到“开始”菜单,然后键入regedit.这将打开注册表编辑器.请注意,始终建议在执行任何操作(文件 – >导出)之前备份整个注册表,或仅建议您要编辑/删除的键.
打开编辑 – >查找,键入CIMediator并仅选中Keys.您的服务名称应在以下位置多次显示为密钥

HKEY_LOCAL_MACHINE\SYstem\ControlSet001\services\eventlog\CIMediator,
HKEY_LOCAL_MACHINE\SYstem\ControlSet001\services\CIMediator,
HKEY_LOCAL_MACHINE\SYstem\CurrentControlSet\services\eventlog\CIMediator,
HKEY_LOCAL_MACHINE\SYstem\CurrentControlSet\services\CIMediator

尝试删除这些键.它对我有用.

1
2

原文地址:https://www.jb51.cc/windows/364781.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐