2015-03-02 142 views
0

我想要查看服務的當前設置sc failure。這可能嗎?Windows服務控制器:查看服務的「sc故障」設置

背景:

我正在使用Saltstack設置服務的狀態配置。眼下,當一個服務被設置,一個命令行運行到設定的故障行爲,如:

sc failure serviceName reset= 30 actions= restart/5000 

我希望能夠查詢傳遞給sc failure參數的電流值,使鹽可以驗證是否需要進行任何更改,並在推出新配置時記錄更改值。

從文檔sc failuresc query,我沒有看到任何支持這一點。

在註冊表中,在HKLM:\SYSTEM\CurrentControlSet\services\myService\處有一個密鑰FailureActions。但我不知道如何讀這個鍵的值進行比較,以我的理想狀態:

PS C:\Users\blaffoy> (Get-ItemProperty -path $key -name failureactions).failureactions 
30 
0 
0 
0 
0 
0 
0 
0 
0 
0 
0 
0 
1 
0 
0 
0 
20 
0 
0 
0 
1 
0 
0 
0 
136 
19 
0 
0 

實驗的一點點指示第一個數字對應於reset參數,但除此之外,我不不知道如何調和其餘的輸出。

回答

1

sc.exe是Windows服務API的命令行界面。 QueryServiceConfig2處理多個查詢類型,其被公開爲以下命令:

  • qdescription
  • qfailure
  • qfailureflag
  • qsidtype
  • qprivs
  • qtriggerinfo

您需要的命令是sc <server> qfailure [service name] <bufferSize>