熱點推薦:
您现在的位置: 電腦知識網 >> 電腦常識 >> 正文

你的秘密藏不住:深入了解INF文件

2013-11-11 14:24:38  來源: 電腦常識 

  大家都知道我的電腦裡有數也數不清的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]節才能知道具體的位置atinbtxxsys=則你必須到[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]
  
  HKCUSoftware\Microsoft\Windows\CurrentVersion\Policies\SystemDisableregstryTools
  
  HKLMSoftware\Microsoft\Windows\CurrentVersion\Policies\SystemDisableregstryTools
  
  輸入完畢另存為UNLOCKINF名字任取擴展名必須是INF
  
  第二步UNLOCKINF文件上右鍵單擊在彈出的右鍵菜單中點選安裝被鎖的注冊表即會應聲而開
  
  .巧妙利用INF文件自動備份重要的文件
  
  大家都知道注冊表是Windows操作系統的命根子因此系統啟動時會自動運行注冊表檢查程序自動更新備份注冊表文件在系統盤的Windows目錄中有一個ScanreginiScanregwexe每天所執行的默認操作都是在它的控制下運行的我們可以利用這一原理實現對我們重要文件的備份
  
  第一步打開資源管理器找到該文件用記事本程序打開它我們可以清楚地看到共有五個參數
  
  ()Backup 這個參數值可為默認為值為表示在每天首次啟動時掃描注冊表值為表示不進行任何注冊表操作
  
  ()Optimize 這個參數值可為默認為值為表示每次掃描注冊表時刪除注冊表中的多余數據從而優化注冊表數據值為表示不進行刪除操作
  
  ()ScanregVersion= 程序版本說明
  
  ()MaxBackupCopies 這個參數用來設置建立的備份文件的個數值為中的任一個數默認值為即最大可建立五個備份文件為更好的保護系統一般來說設置個左右為宜
  
  ()BackupDirectory 這個參數用來設置備份文件存放的目錄默認存放目錄為Windows\Sysbckup注意這裡填寫的必須是完整路徑
  
  ()Files 在Scanregini的最後有如下注釋內容Files=[dir code]filefilefile將其前面的注釋符號去掉你就可以自己DIY需要注冊表檢查程序備份的重要文件了默認情況下注冊表檢查程序創建注冊表備份文件時會將systemdatsysteminiuserdatwinini四個文件保存在cab壓縮文件中如果你需要將其他重要的系統配置文件添加到此壓縮文件中可在Files=後面輸入[目錄代碼]文件名文件名文件名文件名之間以逗號相隔目錄代碼含義如下
  
   代表C:\Windows目錄
  
   代表C:\Windows\System目錄
  
   代表C盤根目錄
  
   代表Windows系統所在盤的根目錄
  
  例如要把Autoexecbat和Configsys兩個文件放到備份文件中可設置參數為File=configsysautoexecbat
  
  .硬盤(U盤)也需個性化
  
  第一給硬盤(U盤)DIY一個可愛的圖標
  
  我們首先將硬盤的生硬圖標替換為我們喜歡的圖標給硬盤披上美麗的彩衣首先准備一圖標文件你可以用圖標制作程序制作自己的圖標文件也可以使用現成的圖標文件最好是保存到硬盤某一個分區的根目錄下接著打開記事本程序錄入以下內容
  
  [autorun]
  
  ICON=******ICO
  
  其中******是圖標文件的路徑及圖標文件名請自行修改為具體的圖標文件的路徑及圖標文件名錄入完畢另存為Autoruninf並將其剪切到某一個你欲扮酷的分區的根目錄下
  
  第二讓硬盤能歌善舞
  
  想不想當你雙擊了硬盤分區或是點右鍵選擇右鍵菜單中的自動播放之後就自動打開音樂播放程序開始播放音樂文件讓動聽的音樂時刻環繞在你的左右心動了吧其實十分簡單Come On
  
  接著在Autoruninf文件中錄入以下內容:
  
  OPEN=D:\Program Files\foobar
  foobarexe d:\qsfpl
  
  其中D:\Program Files\foobar
  foobarexe是筆者喜愛的播放器Foobar的具體位置如果你用的是Winamp或其它的播放器請替換為具體的播放器所在的位置d:\qsfpl是Foobar播放器的播放列表文件你也可以替換為某一個具體的音樂文件所在的路徑如果你用的是Winamp則播放列表
From:http://tw.wingwit.com/Article/Common/201311/5327.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.