Windows Service(服務)無法自動啟動,出現逾時的錯誤

 我們有一台顧問幫忙裝好的HR系統,今天在做異機還原測試時,發生了系統開機後,相關服務沒有自動啟動。

於是我們先以手動的方式測試是否還原有問題,測試的結果手動啟動服務沒有問題。

檢查Windows的事件,發現有逾時的錯誤


原來Windows的服務有預設30秒的限制,在該限制秒數之內如果還沒有得到成功的回應,那該服務還是會被停掉,而我們這台還原測試的機器,硬體規格與正式區差異很大,所以開機的速度相當緩慢。

依據微軟的技術文件,將逾時的值改為120秒後,問題就解決了,需注意的是該方法會套用所有的服務。

執行的步驟如下:

1、啟動登錄編輯程式 (Regedit.exe) 。

2、找到登錄機碼: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

3、以滑鼠右鍵按一下 [ ServicesPipeTimeout ] DWORD 值,然後按一下 [ 修改]。

4、按一下 [ 十進位]。

5、輸入 60000(毫秒),然後按一下 [確定]。

如果沒有 [ ServicesPipeTimeout ] ,可依下列新增:

1、找到登錄機碼: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control

2、在 [編輯]  -->  [新增],然後按一下 [DWORD 值]。

3、輸入名稱 ServicesPipeTimeout,然後按下確定

4、與上述的方式一樣,將值修改為 60000(毫秒)即可。