Winapi Windows服务查询
使用MSDN中描述的方法注册Windows服务(ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.WIN32COM.v10.en/dllproc/base/createservice.htm)并使用与所提供示例类似的代码:Winapi Windows服务查询,winapi,service,Winapi,Service,使用MSDN中描述的方法注册Windows服务(ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.WIN32COM.v10.en/dllproc/base/createservice.htm)并使用与所提供示例类似的代码: schService = CreateService( schSCManager, // SCManager database TEXT("Sample_Srv"), // name of s
schService = CreateService(
schSCManager, // SCManager database
TEXT("Sample_Srv"), // name of service
lpszDisplayName, // service name to display
SERVICE_ALL_ACCESS, // desired access
SERVICE_WIN32_OWN_PROCESS, // service type
SERVICE_DEMAND_START, // start type
SERVICE_ERROR_NORMAL, // error control type
szPath, // path to service's binary
NULL, // no load ordering group
NULL, // no tag identifier
NULL, // no dependencies
NULL, // LocalSystem account
NULL); // no password
我的问题是,尽管该服务已注册且工作正常,但在msconfig.msc中,该服务在恢复选项中具有“不采取任何操作”。是否有一种方法可以通过编程更改此设置,以便在出现故障时重新启动?您可以使用
sc
命令设置此设置
sc failure "servicename" reset= 0 actions= restart/30000////
这将告诉它在0天后重置故障计数器(从不),并在第一次故障发生30秒后重新启动,而对第二次和以后的故障不采取任何措施。您可以使用
sc
命令设置此设置
sc failure "servicename" reset= 0 actions= restart/30000////
这将告诉它在0天后重置故障计数器(从不),并在第一次故障发生30秒后重新启动,对第二次和以后的故障不采取任何措施。查看如何设置这些类型的服务选项。查看如何设置这些类型的服务选项。在MSDN中执行了进一步的挖掘-虽然不太容易找到,但似乎很难找到 更改服务配置2() 当param dwInfoLevel是SERVICE_CONFIG_FAILURE_ACTIONS(2)时,lpInfo参数是指向SERVICE_FAILURE_ACTIONS结构的指针 服务\故障\动作结构
您可以在其中根据需要配置“可选”服务设置。在MSDN中执行了进一步的挖掘-虽然不太容易找到,但它似乎 更改服务配置2() 当param dwInfoLevel是SERVICE_CONFIG_FAILURE_ACTIONS(2)时,lpInfo参数是指向SERVICE_FAILURE_ACTIONS结构的指针 服务\故障\动作结构 您可以根据需要配置“可选”服务设置