![无法卸载 Windows 服务](https://linux22.com/image/514172/%E6%97%A0%E6%B3%95%E5%8D%B8%E8%BD%BD%20Windows%20%E6%9C%8D%E5%8A%A1.png)
我不知怎么地设法卸载了我正在开发的 Windows 服务。
无特定顺序
如果我使用,它不会删除sc 删除服务名称
它给出了一个异常installutil /u 服务路径.exe
“指定的服务不存在作为已安装的服务”
使用安装程序/卸载程序显然也不起作用
它不再位于服务列表中
如果我使用,则不会显示查询
我已经重启了
我不知道还能做什么,但某些东西仍然存在,因为尝试安装会失败,因为它已经存在。
请帮忙。
更新:
...可能是其他地方的注册表中的东西吗?
HKEY_CLASSES_ROOT\Installer\Assemblies\D:|Program Files|[路径].exe
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Assemblies\D:|Program Files|[路径].exe
HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache
HKEY_CLASSES_ROOT\Installer\产品...
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products...
ETC...
答案1
我会尝试从 Microsoft 下载 sysinternals 套件(免费下载)并运行 procmon 和/或 regmon 和/或 Filemon(尽管 procmon 应该合并它们的功能),然后查看安装过程中出现失败或拒绝消息的位置,并查看那里以找出安装程序认为它已安装的原因。希望它能提供线索,说明发生了什么。
答案2
最终找到了一种可行的组合。
使用 InstallUtil /u 卸载
使用 InstallUtil /i 重新安装
然后使用 SetupProject 卸载
如果我尝试使用 InstallUtil 卸载,则会出现错误。如果我尝试使用 Setup 项目进行安装,则会出现失败。
正是这种特定的组合使一切再次恢复到正确状态,以便我可以使用安装项目再次安装和卸载。
...不要自己安装。再也不要点击“取消”按钮来安装服务!