史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   作業系統操作技術文件 (http://forum.slime.com.tw/f128.html)
-   -   通過.inf文件讓Windows XP實現自動維護 (http://forum.slime.com.tw/thread166342.html)

psac 2006-01-20 04:42 AM

通過.inf文件讓Windows XP實現自動維護
 
通過.inf文件讓Windows XP實現自動維護

indows XP的日常維護是件既耗時又無聊的事情,如果Windows XP能夠聰明一點,進行自動維護就好了。下面,就為大家介紹一種通過.inf文件讓Windows XP進行自動維護的技巧,自動維護的具體內容可以任意設定,不過需要指令來實現。比如用Xcopy進行文件制作備份、Defrag進行磁牒磁碟重整、Del移除LJ文件等等。為了講清楚原理,下面我們以Defrag為例,你可以根據自己的需要進行修改。
  實現步驟


  1.建立Main.bat文件

  以管理員身份登入Windows XP,在系統碟的根目錄下新增一個名為Main.bat的文件(檔案名可以隨便取,下同)並輸入如下內容:

  cd\

  C:

  cd Windows\system32

  defrag C: /f

chkntfs C:

  2.建立Main.inf文件

  新增一個檔案名為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$」,否則文件將無法起作用。

  3.建立Begin.bat文件

  在C碟根目錄下建立批次處理文件Begin.bat,向這個文件中輸入:

  C:\WINDOWS\System32\rundll32.exe advpack.dll,LaunchINFSectionEx

  C:\Main.inf,DefaultInstall,,32

  這個指令的作用是讓Windows XP啟動一個硬體安裝程序,從而執行.inf文件中的指令。Rundll32.exe在Windows中被用來使用DLL文件(動態連接庫)中函數提供的功能。比如這裡的rundll32.exe就使用了advpack.dll中的LaunchINFSectionEx函數,這個函數的作用就是啟動一個.inf安裝程序。不過Main.inf的內容已經和硬體安裝無關,而是被我們偷梁換柱改成了系統自動維護的指令。

  4.計劃工作

  計劃工作的作用是定期執行Begin.bat文件,實現步驟如下:

  (1)開啟Windows XP的開始選單進入「程序→附件→系統工具→計劃工作」,雙按「增加計劃工作」,按下「瀏覽」,找到C碟根目錄下面的Begin.bat文件,然後按下「下一步」按鈕;

  (2)設定工作執行週期為「每週」,然後按下「下一步」按鈕;

  (3)設定執行計劃工作的密碼,也就是電腦的管理員密碼,然後按下「下一步」按鈕;

  (4)設定執行工作的具體日期和時間。

  在以上例子中,我們讓這個計劃工作每週日的23:30執行一次文件C:\Begin.bat,進行自動維護。

  實現原理

  .inf文件通常用於硬體安裝,其實是一個文本文件。當用戶在文件上按下滑鼠右鍵選項「安裝」的時候,Windows將會根據這個文件的內容執行一系列操作,上面介紹的自動維護方法就是借助.inf文件的這個特點實現的。

  我們建立的計劃工作啟動時,它會使用Begin.bat。Begin.bat將使用Main.inf作為組態文件啟動一個安裝程序,按照Main.inf中的內容執行一系列操作。

  Main.inf啟動時會首先執行[Tst.PreSetup]段中的語句,也就是「C:\Main.bat」,Main.bat被使用時,Windows將對C:進行磁牒磁碟重整工作。Main.bat的內容越豐富,自動維護的功能就越強大。

  Main.bat中的指令都執行完畢後,[Trs.PostSetup]中的語句又將被執行,也就是:

  C:\WINDOWS\SYSTEM32\TSSHUTDN.EXE 0 /DELAY:0 /POWERDOWN

  這個語句的作用是電腦關機,其實是「關閉Windows XP+關閉電源」。

  最後要注意的一點,這個方法只能在Windows XP Professionl中實現,Windows XP Home無法使用。


所有時間均為台北時間。現在的時間是 05:58 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1