查看單個文章
舊 2006-08-29, 08:39 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 自動恢復系統服務「一招制敵」

自動恢復系統服務「一招制敵」
安裝好Windows後,我們經常要對Windows進行調節,其中重要的一項就是關閉不必要的服務。為了節約系統資源,關閉一些無關緊要的服務確實必要。但會產生這樣一個問題:如果服務被錯誤地關閉,而當我們後來發現問題,又找不出是哪一個服務被關閉的時候,也許我們就會想要回到以前的正常狀態,然後一個個地關閉服務以便找出問題,可是又記不清每個服務的初始狀態,這可就令人惱火了!
  如果能夠寫一個程式,記錄每個服務的啟動狀態,並能夠把系統的服務恢復到該狀態就比較方便了。下面這個BAT程式,用於記錄並恢復服務的啟動狀態,使用了sc命令(Windows XP/2003自帶,Windows 2000系統用戶可以從Windows XP複製一個sc.exe就可以用了)
  該程式的優點是:產生的記錄文件是一個批處理文件,直接執行就可以恢復系統服務的啟動狀態。
  下面是批處理文件的代碼,存儲為savestate.bat就可以了,雙擊後執行,會自動產生一個以當前時間和日期文件名字的記錄文件。
@echo off
rem get current date and time
for /f "tokens=1,2,3 delims=-/. " %%j in ('Date /T') do set FILENAME=srv_%%j_%%k_%%l_%%m
for /f "tokens=1,2 delims=: " %%j in ('TIME /T') do set FILENAME=%FILENAME%_%%j_%%k.bat
rem get all service name
sc query type= service state= all| findstr /r /C:"SERVICE_NAME:" >tmpsrv.txt
echo Save Service Start State In %FILENAME%
rem save service start state into batch file
rem
echo @echo Restore The Service Start State Saved At %TIME% %DATE% >"%FILENAME%"
echo @pause >>"%FILENAME%"
for /f "tokens=2 delims=:" %%j in (tmpsrv.txt) do @( sc qc %%j |findstr START_TYPE >tmpstype.txt && for /f "tokens=4 delims=:_ " %%s in ( tmpstype.txt) do @echo sc config %%j start= %%s >>"%FILENAME%")
echo @pause >>"%FILENAME%"
del tmpsrv.txt
del tmpstype.txt
  上述代碼可以到
http://www.newhua.com/cfan/200418/savestate.rar下載,它可以產生一個恢復到系統服務預定狀態的批處理文件,文件名中包含當前的日期。這樣,一旦因為修改系統服務出現故障,可以執行這個恢復程式,就能把系統服務恢復到安全狀態了。
http://www.cfan.com.cn/school/system/xp/h000/h22/img20060508031355099.gif
  產生的批處理文件是下面的樣子:
@echo Restore The Service Start State Saved At 21:44:39.67 2004-08-12 星期四
@pause
sc config Alerter start= DISABLED
sc config ALG start= DEMAND
.
.
.
sc config wuauserv start= DISABLED
sc config WZCSVC start= DISABLED
@pause
  執行這個文件之後,系統服務就恢復到啟動狀態了,如圖,很方便吧?
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次