据我所知
如果服务启动为LocalSystem,则在卸载包时停止并卸载服务是非常有帮助的。
是否有可能做到这一点?我无法想象这是不可能的,除非强制文件在使用对话框或RestartManager弹出。
发布于 2016-04-27 18:18:25
你提到的话题都没有那么相关。停止服务通常不是一个问题,不管它是否是本地系统。当被要求时,服务没有停止的真正原因只有一个:它们写得很差。它们只是代码,如果它们没有及时响应停止请求,那么就会出现问题。如果他们决定用20分钟来关闭,举一个令人震惊的例子,你不能责怪卸载者。如果某个服务位于其中一个托管进程中,以便某些普通的可执行文件可以作为服务运行,那么服务也可能无法正确停止,我认为java类型的问题就是这样。
当服务中存在文件正在使用的问题时,如果它们不关闭,也可能会发生,但如果它们不再是一个服务,但是进程并没有消失(宿主类型的服务通常就是这种情况)。服务可以响应停止请求,Windows将不再将其视为服务,但不需要进程消失--它可以继续运行、进行清理或其他任何操作,因此仍然会导致文件在用检查。这也是Visual安装项目中安装程序类的一个常见问题(它不使用标准的MSI操作),因为在那些使用安装程序类的设置中没有什么可以关闭正在运行的服务。
如果您有一个特定的问题,那么您应该张贴它,但停止服务一直在卸载期间,没有任何问题。
https://stackoverflow.com/questions/36889709
复制相似问题