异常情况下重启服务

时间:2012-08-13 13:07:05

标签: delphi windows-services

我正在开发必须重新启动的服务应用程序。这样做的方法是什么?如果停止,是否可以再次询问系统启动应用程序?我正在使用Delphi 2007。

2 个答案:

答案 0 :(得分:8)

您的服务可以通过调用其AfterInstall事件内的Win32 API ChangeServiceConfig2()函数,以编程方式为自己配置恢复选项。将dwInfoLevel设置为SERVICE_CONFIG_FAILURE_ACTIONS,并将lpInfo设置为指向SERVICE_FAILURE_ACTIONS记录,说明服务失败时您希望发生的情况。

答案 1 :(得分:6)

如果您进入services.msc,则可以为您配置此服务。您不必在代码中执行此操作。打开服务属性时,请参阅“恢复”选项卡。