安装Windows服务失败:服务已存在

Pie*_*ter 4 c# windows-services installutil

我正在尝试重新安装我用C#编写的服务.这是第一次有效.我使用installutil来处理安装,服务列表中出现了服务,我可以启动它.然后我对代码进行了一些更新并卸载了服务.在弄清楚我必须关闭服务窗口后,服务似乎已经消失(即成功卸载).但是,在尝试再次安装服务时,我收到消息说:

System.ComponentModel.Win32Exception: The specified service already exists
Run Code Online (Sandbox Code Playgroud)

这看起来很奇怪,因为我在服务窗口中看不到它.我终于认为在删除有关我的服务的注册表项后发现了问题,但不幸的是,这并没有解决任何问题.

此外,再次卸载对解决问题没有太大作用,因为这会导致矛盾的消息:

System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
Run Code Online (Sandbox Code Playgroud)

我应该相信什么?该服务是否存在?我觉得自己像一个物理学家试图弄清楚猫是死了还是活着.我希望这里有人能够帮助解决这个问题.

Pie*_*ter 7

一个相关的SO答案最终指出了我正确的方向(为什么我没有在谷歌或SO自己的搜索中发现我不知道).无论如何,显然Visual Studio生成的Designer.c也创建了一个进程和服务安装程序.当然,这些服务的安装名称与我手动创建的安装程序相同.删除我自己的安装程序解决了这个问题.


小智 5

实际问题是您在代码中多次添加了serviceProcessInstaller和serviceInstaller的对象.它应该只添加一次..

打开projectinstaller的designer.cs文件,你会看到它已经添加到那里了...