Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

讓 Windows XP 全自動執行系統維護(磁碟重組、清理垃圾、備份檔案)

編輯:XP 系統基礎知識

核心原理

利用 .inf 安裝腳本的特性:右鍵點擊 .inf 選「安裝」時,Windows 會依腳本內容執行一系列操作。我們偷樑換柱,將維護指令(如 defrag、del、xcopy)寫入 .inf,再透過排程任務定期觸發,實現無人值守維護並自動關機。

實作步驟(以 C 磁碟重組為例)

1. 建立 Main.bat(維護主程式)

系統碟根目錄建立 Main.bat:

cd\
C:
cd Windows\system32
defrag C: /f
chkntfs C:

可自行擴充:del /q /s %temp%\* 清理暫存檔、xcopy 備份重要資料等。

2. 建立 Main.inf(安裝腳本)

[version]
Signature="$CHICAGO$"
AdvancedINF=2.5,"advpack.dll"

[DefaultInstall]
RunPreSetupCommands=Tst.PreSetup
RunPostSetupCommands=Tst.PostSetup

[Tst.PreSetup]
C:\Main.bat

[Tst.PostSetup]
C:\WINDOWS\SYSTEM32\TSSHUTDN.EXE 0 /DELAY:0 /POWERDOWN

關鍵點: Signature 必須為 $CHICAGO$ 否則無效。TSSHUTDN.EXE 參數意為「關閉 Windows + 關閉電源」。

3. 建立 Begin.bat(觸發器)

C:\WINDOWS\System32\rundll32.exe advpack.dll,LaunchINFSectionEx C:\Main.inf,DefaultInstall,,32

呼叫 advpack.dll 的 LaunchINFSectionEx 函數啟動 .inf 安裝流程。

4. 設定排程任務

  1. 「開始」→「程式集」→「附屬應用程式」→「系統工具」→「排程任務」→「新增排程任務」。
  2. 瀏覽選取 C:\Begin.bat,設定為「每週」執行(如週日 23:30)。
  3. 輸入管理員帳號密碼完成設定。

執行流程

  1. 排程觸發 Begin.bat。
  2. Begin.bat 以 Main.inf 啟動安裝流程。
  3. 先執行 [Tst.PreSetup] → 呼叫 Main.bat 執行維護工作。
  4. 維護完成後執行 [Tst.PostSetup] → 呼叫 TSSHUTDN.EXE 關機斷電。

限制與注意

  • 僅適用 Windows XP Professional,Home 版無法使用。
  • 維護指令需具備管理員權限才能執行。
  • 建議先手動測試 Main.bat 確認無誤後再部署排程。
Copyright © Windows教程網 All Rights Reserved