大家都知道
在
我的電腦
裡有數也數不清的INF文件
但是卻很少有人知道
INF文件是干什麼用的
充其量
也僅僅停留在INF文件能夠解開鎖定的注冊表這一感性的認識上
那麼到底什麼是INF文件
INF文件又能干些什麼呢?今天讓我們一起走進INF文件這一神秘的世界
揭開INF文件的神秘面紗
INF是Device INFormation File的英文縮寫
是Microsoft公司為硬件設備制造商發布其驅動程序推出的一種文件格式
INF文件中包含硬件設備的信息或腳本以控制硬件操作
在INF文件中指明了硬件驅動該如何安裝到系統中
源文件在哪裡
安裝到哪一個文件夾中
怎樣在注冊表中加入自身相關信息等等
安裝監視器
調制解調器和打印機等設備所需的驅動程序
都是通過INF文件
正是INF的功勞才使得Windows可以找到這些硬件設備的驅動並正確安裝
當我們通過
開始→控制面板→添加刪除程序→Windows安裝程序
來添加系統組件的時候
INF文件將會自動調用
而在其他場合下
則需要在INF文件上點擊鼠標右鍵
然後選擇
安裝
你才能順利安裝應用程序
在C
/Windows/INF文件夾中存放有大量的INF文件
該文件夾一般處在隱含狀態
如果你想查看該文件夾
可選擇
查看→文件夾選項→查看
然後在
文件和文件夾
選項下選擇
顯示所有文件
解剖INF文件的結構
INF文件其實是一種純文本文件
可以用任意一款文本編輯軟件來打開進行編輯
如
記事本
寫字板等
INF文件有一整套的編寫規則
每一個INF文件都是嚴格按照這些規則來編寫的
*規則一
INF文件是分節的
每一個INF文件有許多的節組成
節名用方括號括起來
這些節名有些是系統定義好的
有一些是用戶自定義的
每一個節名最長為
個字符(Windows
/XP/
操作系統中)或
個字符(Windows
操作系統中)
節與節之間沒有先後順序的區別
另外
同一個INF文件中如果出現兩個同樣的節名
則系統會自動將這兩個節名下面的條目合並到一起
*規則二
在節與節之間的內容叫條目
每一個節又是由許多的條目組成的
每一個條目都是由形如
signature=
$CHICAGO$
的形式組成的
如果每一個條目的等號後有多個值
則每一個值之間用
號分隔開
*規則三
INF文件對大小寫不敏感
*規則四
號後面的內容為注釋
*規則五
如果一個條目的內容過多
在一行無法書寫完全
則用
\
將一行內容書寫為多行
明白了INF文件的規則後
讓我們一起來解剖INF文件的結構
.Version節
每一個INF文件都包含一個這樣的節
該節中的條目主要是描述此INF文件支持的設備類型和適用的操作系統
在該節中如果出現
signature=
$CHICAGO$
這樣的條目則表示該INF文件適用於Windows
之後的所有操作系統
如果包含
signature=
$Windows NT$
這樣的條目則表示該INF文件適用於Windows
/XP/
操作系統
而且兩者必具其一
另外
該節中
CLASS
條目很重要
它表明了設備的類型
常見的類型有
Display(顯示設備
如顯卡)
Media(多媒體設備
如聲卡)
Net(網絡設備
通常是網卡)
Modem(調制解調器)
Printer(打印設備)
Image(圖像捕獲設備
如攝像頭)
.Manufacturer節
該節中的條目主要是描述INF文件可以識別的所有硬件設備
其中包含有設備的生產廠家
以便設備的正確安裝
如
%ATi%=ATi
指明設備的生產商為
ATi
這個大家都不會陌生吧
是顯卡的生產商
.SourceDisksNames節
該節主要指明安裝文件所在的介質
如:
=
ATi Drivers Release CD
表明所有驅動程序都在零售版的CD盤上
.SourceDiskFiles節
驅動程序文件列表及被安裝的位置
該節必須結合[SourceDisksNames]節才能知道具體的位置
如
atinbtxx
sys=
則你必須到[DestinationDirs]節去查看
具體代表那個位置
.DestinationDirs節
INF文件會指示安裝程序在安裝的過程中
將一些文件復制到硬盤上
或者將硬盤上的一些文件刪除
重命名等
該節即指定了為實現上述目的的文件所在的目的路徑
.DefaultInstall節和Install節
在這一節中描述了設備驅動程序與硬件設備的實際屬性
默認情況下
首先執行[DefaultInstall]節
該節指定了要復制或刪除的文件
注冊表的更新
INF文件的更新等等信息
同時又包含指向其他節的指針
.String節
這一節中定義了字符串變量
當某些字符串頻繁地出現在INF文件中
為簡化輸入
可以在該節中定義一個字符串變量
代表該字符串出現在INF文件中
讀懂INF文件
下面讓我們以ATi顯卡的用於Windows XP的WDM驅動程序為例來說明一下INF文件的具體含義
由於INF文件往往很長
為了說明方便
我們刪除了一些大部分的信息
僅保留一個INF文件的結構
INF文件精彩實例
光說不練不行
下面讓我們來看幾個INF文件的典型應用
.打開
鎖
定的注冊表
第一步
打開記事本程序
輸入以下內容
[version]
signature=
$chicago$
[defaultinstall]
delReg=DeleteMe
[DeleteMe]
HKCU
Software\Microsoft\Windows\CurrentVersion\Policies\System
DisableregstryTools
HKLM
Software\Microsoft\Windows\CurrentVersion\Policies\System
DisableregstryTools
輸入完畢
另存為UNLOCK
INF
名字任取
擴展名必須是INF
第二步
在
UNLOCK
INF
文件上右鍵單擊
在彈出的右鍵菜單中點選
安裝
被鎖的注冊表即會應聲而開
.巧妙利用INF文件自動備份重要的文件
大家都知道
注冊表是Windows操作系統的命根子
因此
系統啟動時會自動運行注冊表檢查程序
自動更新備份注冊表文件
在系統盤的Windows目錄中有一個
Scanreg
ini
Scanregw
exe每天所執行的默認操作都是在它的控制下運行的
我們可以利用這一原理實現對我們重要文件的備份
第一步
打開資源管理器
找到該文件
用記事本程序打開它
我們可以清楚地看到共有五個參數
(
)Backup 這個參數值可為
或
默認為
值為
表示在每天首次啟動時掃描注冊表
值為
表示不進行任何注冊表操作
(
)Optimize 這個參數值可為
或
默認為
值為
表示每次掃描注冊表時刪除注冊表中的多余數據
從而優化注冊表數據
值為
表示不進行刪除操作
(
)ScanregVersion=
程序版本說明
(
)MaxBackupCopies 這個參數用來設置建立的備份文件的個數
值為
至
中的任一個數
默認值為
即最大可建立五個備份文件
為更好的保護系統
一般來說設置
個左右為宜
(
)BackupDirectory 這個參數用來設置備份文件存放的目錄
默認存放目錄為Windows\Sysbckup
注意這裡填寫的必須是完整路徑
(
)Files 在
Scanreg
ini
的最後有如下注釋內容
Files=[dir code
]file
file
file
將其前面的注釋符號
去掉
你就可以自己DIY需要注冊表檢查程序備份的重要文件了
默認情況下
注冊表檢查程序創建注冊表備份文件時
會將
system
dat
system
ini
user
dat
和
win
ini
四個文件保存在
cab
壓縮文件中
如果你需要將其他重要的系統配置文件添加到此壓縮文件中
可在
Files=
後面輸入
[目錄代碼]
文件名
文件名
文件名
文件名之間以逗號相隔
目錄代碼含義如下
代表C:\Windows目錄
代表C:\Windows\System目錄
代表C盤根目錄
代表Windows系統所在盤的根目錄
例如要把Autoexec
bat和Config
sys兩個文件放到備份文件中
可設置參數為
File=
config
sys
autoexec
bat
.硬盤(U盤)也需個性化
第一
給硬盤(U盤)DIY一個可愛的圖標
我們首先將硬盤的生硬圖標替換為我們喜歡的圖標
給硬盤披上美麗的彩衣
首先准備一圖標文件
你可以用圖標制作程序制作自己的圖標文件
也可以使用現成的圖標文件
最好是保存到硬盤某一個分區的根目錄下
接著打開記事本程序
錄入以下內容
[autorun]
ICON=******
ICO
其中
******
是圖標文件的路徑及圖標文件名
請自行修改為具體的圖標文件的路徑及圖標文件名
錄入完畢
另存為
Autorun
inf
並將其剪切到某一個你欲扮酷的分區的根目錄下
第二
讓硬盤能歌善舞
想不想當你雙擊了硬盤分區或是點右鍵選擇右鍵菜單中的
自動播放
之後
就自動打開音樂播放程序
開始播放音樂文件
讓動聽的音樂時刻環繞在你的左右
心動了吧
其實十分簡單
Come On
接著在
Autorun
inf
文件中錄入以下內容:
OPEN=D:\Program Files\foobar
foobar
exe d:\qs
fpl
其中
D:\Program Files\foobar
foobar
exe
是筆者喜愛的播放器Foobar
的具體位置
如果你用的是Winamp或其它的播放器
請替換為具體的播放器所在的位置
d:\qs
fpl
是Foobar
播放器的播放列表文件
你也可以替換為某一個具體的音樂文件所在的路徑
如果你用的是Winamp則播放列表
From:http://tw.wingwit.com/Article/Common/201311/5327.html