我不知何故设法一半卸载我正在开发的Windows服务。
没有特别的顺序
如果我使用sc delete servicename,它不会被删除
它使用installutil / u pathtoservice.exe给出一个exception
“指定的服务不存在作为已安装的服务”
而使用安装程序/卸载程序显然不工作
它不再在服务列表中
没有显示,如果我使用sc查询
我已经重新启动
我不知道还有什么要做,但仍然存在,因为试图安装失败,因为它已经存在。
请帮忙。
更新:
…可能是其他地方的registry中的东西?
HKEY_CLASSES_ROOT \ Installer \ Assemblies \ D:| Program Files | [path to] .exe
HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ Installer \ Assemblies \ D:| Program Files | [path to] .exe
HKEY_CURRENT_USER \ SOFTWARE \微软\的Windows \ ShellNoRoam \ MUICache
HKEY_CLASSES_ROOT \安装\产品…
HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes下\安装\产品…
等等…
我会尝试从微软下载sysinternals套件(免费下载)并运行procmon和/或regmon和/或Filemon(尽pipeprocmon应该合并它们的function),看看在安装过程中有一个失败或被拒绝的消息,看在那里寻找为什么你的安装程序认为它已经安装。 希望这可能会提供一些线索。
终于find了一个有效的组合。
卸载InstallUtil / u
重新安装InstallUtil / i
然后用SetupProject卸载
如果我试图用InstallUtil卸载,那是不对的。 如果我尝试安装与安装项目失败。
正是这个特定的组合使所有事情都进入了正确的状态,以便我可以使用安装项目来再次安装和卸载。
…不是为了自我。 再也不要在安装服务期间取消取消!