【发布时间】:2010-09-22 21:53:08
【问题描述】:
我当前的项目涉及部署作为 Windows 服务运行的升级 .exe 文件。为了用新版本覆盖现有的 .exe,我目前需要:
- 停止服务
- 卸载服务
- 重新启动系统(以便 Windows 释放它对文件的保留)
- 部署新的 .exe
- 重新安装服务
- 启动升级后的服务。
我想避免重新启动,以便可以进行完全脚本化/自动升级。
有什么方法可以避免重启?也许是一个命令行工具会迫使 Windows 放弃它对旧 .exe 的死控制?
【问题讨论】:
-
感谢大家的帮助!我发现我的问题的根源是 WMI 对 .exe 的句柄。请参阅我的新问题:stackoverflow.com/questions/302315/…
-
仅供参考,如果您打开了服务管理器,则需要在重新安装服务之前关闭,否则您将收到“服务已标记为删除”错误。
-
在my experience“[SC] CreateService FAILED 1072: 指定的服务已被标记为删除”取决于被卸载的服务是否没有先停止。我试图在服务管理工具打开的情况下重现该错误,但无法重现。
标签: windows scripting windows-services operating-system filesystems