如何获取win32_service恢复选项卡属性

时间:2013-10-23 12:25:21

标签: windows powershell service win32-process

关于服务的恢复选项卡属性,可在此处查看:

http%253A%252F%252Fwww.ehloworld.com%252Fwp-content%252Fuploads%252F2011%252F10%252Fservice-recovery-options-1.png

是否有API来获取以下属性值:

  1. 首次失败,例如值:"不采取行动"
  2. 第二次失败
  3. 后续失败
  4. 重置失败计数
  5. 我更喜欢在PowerShell中这样做,但也希望了解其他选项。

3 个答案:

答案 0 :(得分:1)

我不熟悉PowerShell,但有一个可用的Win32 API:QueryServiceConfig2()。将dwInfoLevel参数设置为SERVICE_CONFIG_FAILURE_ACTIONS,并将指针传递给lpBuffer参数中的缓冲区,该缓冲区足够大,可以接收SERVICE_FAILURE_ACTIONS结构。

答案 1 :(得分:0)

需要在

下修改服务注册表项
HKLM\System\CurrentControlSet\services\<service name>\

添加名称为binary的{​​{1}}类型的值。我不知道它是如何构建的,你必须要玩它,但因为它与powershell有关,它只是抓住服务的真实名称(如果你拥有的只是显示器,可能使用FailureActions name),导航到该regkey并创建一个新值,例如:

get-service

添加一个byte [],但就像我提到的那样,你必须对数组的含义进行逆向工程,或者只是复制一个现有的或类似的东西。

答案 2 :(得分:0)

您可以使用cs.exe

控制它
Get-Service -DisplayName YourService | % { sc.exe failure $_.Name actions= /0 reset= 0 }