我目前正在开发.NET 4.0,Visual Studio 2010,Windows 7-32bit的Windows服务。我有一个安装程序项目,为我安装。当我安装该服务,卸载它,并尝试再次安装时,我收到以下错误:
错误1001.指定的服务已标记为删除
在Windows XP中,问题是Services.msc已打开。关闭此窗口可以解决此问题。
但是,对于Windows 7,我可以解决此问题的唯一方法是重新启动。我尝试关闭所有程序,但问题仍然存在。
有没有人知道如何在不重新启动的情况下解决这个问题?
修改
我没有看到这个问题因为我停止使用MSI安装程序,而是使用sc.exe来手动安装服务。 我认为这个问题可能与Visual Studio 2010和MSI Installer Projects的组合有关。但是,我仍然不知道这个问题的罪魁祸首是什么。 事实证明,Process Explorer是罪魁祸首。
答案 0 :(得分:42)
我在Windows 7旗舰版上遇到了同样的问题。关闭Services.msc窗口后安装服务解决了我的问题。
答案 1 :(得分:24)
简答
长答案
再次遇到此问题后,我转到任务管理器并开始关闭进程。我最终找到了罪魁祸首,它是一个用于管理软件分发的内部企业应用程序。我把它关了,服务终于消失了。
更新
我还发现有时需要关闭Process Explorer以使已删除的服务消失。
答案 2 :(得分:6)
您是否考虑过使用其他MSI创作工具,例如Windows Installer XML?它的优点是它不会隐藏Windows Installer的底层ServiceInstall / ServiceControl面板,使您免于使用脆弱的进程外InstallUtil代码重新发明轮子的痛苦。
答案 3 :(得分:1)
我刚刚在Windows 7中解决了这个问题。
FWIW,结果你可以进入“服务”标签,右键点击有问题的服务,选择“转到流程”,然后根据需要终止。
答案 4 :(得分:0)
我的部署服务器上的Windows服务遇到了同样的问题。
解决问题的步骤:
希望这对你有用。