工做中有時須要啓動和中止windows service,有時候會出現服務處於stopping或者starting的狀態,可是,在services界面中,start service/stop service已經處於灰色不可操做狀態,用命令行的形式net start/stop servicename也無濟於事。中止服務的方法就是關掉這個進程,可是不少時候沒法肯定是哪一個進程與之相關。在命令行中咱們能夠使用sc queryex servicename這個命令來得到該服務的相關信息。windows
For example,ide
Run 'sc queryex WebsenseDCAgent' in command prompt命令行
The output is below,blog
SERVICE_NAME: WebsenseDCAgent
TYPE : 10 WIN32_OWN_PROCESS
STATE : 3 STOP_PENDING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x1d4c8
PID : 4488
FLAGS :進程
查看到此服務的進程號之後咱們能夠用命令 'taskkill /PID 4488 /F' 來強制結束此服務的進程. /F means 'kill forcely'.get
過一下子咱們再查看服務的狀態它會自動再運行,OK大功告成it
補上hyy1988說的方法:就是 在 Service上點右鍵有個 Go to Process,會轉到這個Service依賴的進程上,Kill掉,完事。io
sc功能很強大,具體能夠參考下面的連接:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/sc.mspx?mfr=trueclass