我在安装我们产品的软件安装包(使用 InstallShield/InstallScript 编写)时遇到了间歇性问题。在安装过程中,我们重新启动 SQL Browser 服务。大多数情况下,这工作正常。但偶尔——而且我还没有想出如何以可预见的方式重现——服务无法重新启动,我在“服务”管理器中发现服务状态设置为“禁用”。
有什么想法会导致服务被禁用,以及如何防止它发生?
我在安装我们产品的软件安装包(使用 InstallShield/InstallScript 编写)时遇到了间歇性问题。在安装过程中,我们重新启动 SQL Browser 服务。大多数情况下,这工作正常。但偶尔——而且我还没有想出如何以可预见的方式重现——服务无法重新启动,我在“服务”管理器中发现服务状态设置为“禁用”。
有什么想法会导致服务被禁用,以及如何防止它发生?
SQL Server 浏览器服务通常以禁用状态安装(这就是我的 SQL Slammer 链接的内容,它提供了除非需要,否则优先禁用浏览器服务的历史记录)。只有命名实例或侦听非默认端口的实例才需要它。您的应用程序安装程序应该只在需要时重新启动浏览器服务,并且当然应该检查禁用的服务并在弄乱它之前询问管理员启用该服务的权限(即显示一个确认对话框)。