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

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...