Windows的系統文件夾中有各種系統文件,看著為數眾多的文件類型,你想過了解它們的作用嗎?本期我們將對其中的一種文件格式進行深挖,幫你實現一鍵備份個人設置,自動添加/刪除系統組件,安裝受限程序等功能。
一、程序操作更簡單——輕松實現軟件安裝與卸載
1)自動添加/刪除系統組件
INF文件作為系統的關鍵文件,在很多地方都體現著作用,例如,系統用其定義“添加/刪除Windows組件”中顯示的內容。選擇“開始→運行”,輸入:%windir%\inf后回車,雙擊里邊的Sysoc.inf,你可以找到形如:msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,hide,7這樣的字段,將這段的hide刪除,然后選擇“控制面板→添加或刪除程序→添加/刪除Windows組件”,你就可以在里邊找到Windows Messenger了,如圖1所示。同樣的方法,你可以刪除很多你不想要的系統組件,你也可以在Sysoc.inf文件中需要的字段后邊加上hide,隱藏指定的組件,以防其被別人刪除。
圖1 顯示被隱藏的系統組件
在“添加/刪除Windows組件”中你可以添加你需要的系統組件,但是每次通過進入“添加/刪除Windows組件”進行添加或卸載組件實在是麻煩,我們可以利用INF文件實現自動安裝或卸載。這里我們以添加或刪除傳真組件為例。打開Sysoc.inf,找到:Fax=fxsocm.dll,FaxOcmSetupProc,fxsocm.inf,,7,這段話表示安裝傳真組件需要的文件。在放置Sysoc.inf文件的文件夾中,可以找到fxsocm.inf文件,在C盤下建立一個ABC文件夾,將這個INF文件拷貝進去。雙擊這個文件,在文件的頂端加入[Components]字段,然后換行,在其下邊加入,在Sysoc.inf文件中找到的與傳真相關的那行話,如圖2所示。加入該字段的目的是告訴inf文件傳真服務需要哪些組件。
圖2 修改INF文件
然后在fxsocm.inf中搜索,[Optional Components]字段,將該字段下的文字復制,然后在ABC文件夾下建立一個文本文件,命名為1.txt,雙擊打開,輸入:[Components],換行后將復制的字段粘入,針對本例該字段為:Fax,對于包含子組件的組件,將子組件列在組件的下方。然后在這些組件后邊加上=on,如果你需要卸載組件則輸入=off。然后輸入:[NetOptionalComponents],換行后將[Components]下邊的字段復制過來,將on改為1,如圖3所示。如果是卸載或者安裝的組件不包含子組件則不需[NetOptionalComponents]字段。
圖3 設置INF的安裝參數
再建立一個文本文檔,在里邊輸入:%systemroot%\system32\sysocmgr.exe /i:"c:\ABC\fxsocm.inf" /u:"c:\ABC\1.txt",保存該文本文檔,并將其改名為FAX.bat,將Windows XP光盤放入,再雙擊這個bat文件,即可完成組件的安裝。以后只要需要安裝這個組件,只需將ABC文件夾拷貝到C盤根目錄下,運行里邊的bat文件即可。
2)突破軟件安裝限制
很多優秀的軟件都對我們的硬件又要求,比如SoundMAX軟件可以很好的提高我們集成聲卡的音質,但是其要求聲卡芯片必須是AD188x、AD189x、AD198x等。否則將禁止安裝。事實上這種限制很多都是通過在INF文件上加入限制實現的,只要修改INF的相應字段就可以突破這個限制。打開SoundMAX的Win2000/XP版的驅動,一般你會在里邊找到3個INF文件,smwdmCH4.inf、smwdmCH6.INF、smwdmCH5.inf,分別對應ICH4芯片、ICH6芯片和其他非Intel芯片,如果你無法確定你的主板芯片,就把它們都改了,呵呵。
打開其中的一個INF文件,然后搜索[AnalogDevices]字段,該段的最后一行為聲卡的ID號。選擇“開始→運行”,輸入:dxdiag,回車后打開“DirectX診斷工具”,選擇“聲音”標簽,如圖4所示,將“設備ID”后邊的字段覆蓋INF文件中的對應字段即可。切記格式要完全一樣,否則將無法安裝。
圖4 查看聲卡ID
二、個人設置不再丟——備份常用文件夾
說是備份個人設置,不如理解成重定向個人設置文件夾的位置更為貼切。我們常用的一些個人設置文件夾,如:收藏夾、Cookie文件夾、桌面文件、我的文檔等,在每次重裝系統時都要進行備份,否則重裝后,這些信息將一去不復返。但是如果我們將這些文件夾移動到別的分區,就無需再費心的備份了。所以將這類操作也歸為文件備份。
假設系統盤是C盤,具體的操作步驟如下:用于存儲用戶的個人數據的分區為E區,我們需要將用戶數據保存到E:\MyData。首先我們編個bat文件,將需要備份的個人設置文件夾,都統統拷貝到這個文件夾中(如果是剛裝的操作系統,這步就可以省了)。
打開個記事本,輸入下邊的命令:
set NEWDEST=E:\MyData
xcopy "%USERPROFILE%\Favorites" "%NEWDEST%\Favorites" /I /S /E
xcopy "%USERPROFILE%\Cookies" "%NEWDEST%\Cookies" /I /S /E
xcopy "%USERPROFILE%\My Documents" "%NEWDEST%\My Documents" /I /S /E
xcopy "%USERPROFILE%\Desktop" "%NEWDEST%\Desktop" /I /S /E
保存這個文檔,將擴展名改為.bat,然后執行該批處理命令。
然后再編個文件,自動修改注冊表中的有關個人數據的路徑,再打開記事本,在里邊輸入:
[Version]
Signature="$Windows NT$"
[DefaultInstall]
AddReg=Shell Folders_AddReg
[Shell Folders_AddReg]
HKCU,"%User_Shell_Folders%","Favorites",0x00020000,"E:\MyData\Favorites"
HKCU,"%User_Shell_Folders%","Personal",0x00020000,"E:\MyData\My Documents"
hkcu,"%User_Shell_Folders%","Cookies",0x00020000,"E:\MyData\Cookies"
HKCU,"%User_Shell_Folders%","Desktop",0x00020000,"E:\MyData\Desktop"
HKCU,"%User_Shell_Folders%","My Pictures",0x00020000,"E:\MyData\My Documents\My Pictures"
[Strings]
User_Shell_Folders="Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
把這個內容保存,設置文件的擴展名為.INF,然后在文件上單擊鼠標右鍵,選擇右鍵菜單中的安裝就可以了實現注冊表更改了。注銷后再登錄,注冊表中的設置就可以生效了。為了節省磁盤空間,你還可以把原來位置的個人數據都刪了。下次再重裝完以后,只需要再執行一下執行INF文件,并重登陸一次,你原來的設置就回來了。
如果你還是覺得不踏實,就干脆禁用掉INF運行功能,打開注冊表編輯器,定位到:HKEY_LOCAL_MACHINE\Software\CLASSES\.inf,雙擊右側的“默認”,將原來的:inffile,改為:txtfile即可,不過這樣修改影響甚大,請謹慎使用。
INF文件功能強大這里介紹的僅僅是冰山一角,INF文件其他的功能例如用INF文件自動安裝操作系統,鎖定/解鎖注冊表,修改鼠標右鍵菜單等,讀者還可自行嘗試。