西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁(yè)編程開(kāi)發(fā)其它知識(shí) → 深入學(xué)習(xí)INF文件-筆記

深入學(xué)習(xí)INF文件-筆記

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:本站整理時(shí)間:2010/12/10 8:54:41字體大。A-A+

作者:綠色軟件編輯點(diǎn)擊:604次評(píng)論:0次標(biāo)簽: inf

  • 類型:Android平臺(tái)大小:349KB語(yǔ)言:中文 評(píng)分:3.2
  • 標(biāo)簽:
立即下載

首先要看什么是.INF文件

簡(jiǎn)單來(lái)說(shuō)就是微軟為安裝硬件驅(qū)動(dòng)所開(kāi)發(fā)的一種腳本。可以用來(lái)節(jié) 拷貝、刪除文件,增、刪注冊(cè)表鍵,更改系統(tǒng)設(shè)置.

先看一下這篇文章 Windows系統(tǒng)下INF 詳細(xì)說(shuō)明  http://www.innovatechautomation.com//html/8075_1.html

INF是Device INFormation File的英文縮寫,INF文件是Microsoft公司為硬件設(shè)備制造商發(fā)布其驅(qū)動(dòng)程序推出的一種文件格式,INF文件中包含硬件設(shè)備的信息或腳本以控制硬件操作。

在INF文件中指明了硬件驅(qū)動(dòng)該如何安裝到系統(tǒng)中,源文件在哪里、安裝到哪一個(gè)文件夾中、怎樣在注冊(cè)表中加入自身相關(guān)信息等等。I

NF文件是由標(biāo)準(zhǔn)的ASCII碼組成,您可以用任何一款文字編輯器查看修改其中的內(nèi)容。

裝信息INF文件與Windows內(nèi)建的安裝服務(wù)引擎(API函數(shù)庫(kù))緊密協(xié)同工作,基于其嚴(yán)格的編寫語(yǔ)法制作而成的INF文件在拷貝、刪除文件,增、刪注冊(cè)表鍵,更改系統(tǒng)設(shè)置等方面都有優(yōu)秀的表現(xiàn),完全可以用來(lái)實(shí)現(xiàn)應(yīng)用程序文件安裝的目標(biāo)!

二、INF文件的一些規(guī)則?

規(guī)則1:
INF文件不區(qū)別大小寫。但出于提高可讀性的目的,請(qǐng)?jiān)诰帉懝?jié)名時(shí)保持大小寫一致性。
規(guī)則2:節(jié)名的最大長(zhǎng)度是有限制的。在基于 Windows NT 操作系統(tǒng)上,請(qǐng)確保節(jié)名不超過(guò) 255 字節(jié)的最大長(zhǎng)度。
規(guī)則3:使用“;”分號(hào)為注釋符。也就是說(shuō)inf 文件分析器會(huì)跳過(guò)與分號(hào)同處一行并出現(xiàn)在分號(hào)后面的任何字符,除非分號(hào)出現(xiàn)由引號(hào) (") 或百分比符號(hào) (%) 括起的字符串中,如,"stri;ng" 、%stri;ng%。
規(guī)則4:使用百分比符號(hào) (%%)為字串轉(zhuǎn)換符號(hào)。類似于定義變量。
規(guī)則5:使用用“\”作為分行符號(hào)。如果一個(gè)項(xiàng)(條目)的內(nèi)容過(guò)多,在一行無(wú)法書寫完,則可以在需要斷開(kāi)項(xiàng)的地方插入反斜杠 (\) 可在下一行繼續(xù)編寫該項(xiàng)。 但是,如果項(xiàng)指定了一個(gè)以反斜杠結(jié)束的值 (如目錄路徑),請(qǐng)將字符串或反斜杠用引號(hào)括起來(lái)。例如,用 \Programs\MyTestApps"\"可將反斜杠重新解釋為行繼續(xù)符。
規(guī)則6:INF文件是分節(jié)的,每一個(gè)INF文件有許多的節(jié)組成,節(jié)名用方括號(hào)括起來(lái)。某些節(jié)名是系統(tǒng)定義好的,不可以更改的。節(jié)與節(jié)之間沒(méi)有先后順序的區(qū)別,另外,同一個(gè)INF文件中如果出現(xiàn)兩個(gè)同樣的節(jié)名,則系統(tǒng)會(huì)自動(dòng)將這兩個(gè)節(jié)名下面的條目合并到一起。
規(guī)則7:在節(jié)與節(jié)之間的內(nèi)容叫項(xiàng)(也有的翻譯成條目),每一個(gè)節(jié)又是由許多的項(xiàng)組成的,每一個(gè)項(xiàng)都是由形如“Signature="$WINDOWS NT$"”的形式組成的。如果每一個(gè)項(xiàng)的等號(hào)后有多個(gè)值,則用逗號(hào) (,) 將節(jié)項(xiàng)中提供的值分開(kāi)。 逗號(hào)與逗號(hào)之間的值可為空,但逗號(hào)不能隨意省略。值是對(duì)書寫的位置敏感的。在值列表中間省略某個(gè)可選值時(shí),必須保留逗號(hào)。但是,在用于 Windows NT操作系統(tǒng)的 .inf 文件中可以省略后綴逗號(hào)。
規(guī)則8:應(yīng)用下列條件時(shí),請(qǐng)用一對(duì)引號(hào) (") 括起字符串:
a、字符串包含必須保留為字符串的一部分的前導(dǎo)或后綴空白。用一對(duì)引號(hào)括起字符串可防止 .inf 文件分析器丟棄前導(dǎo)或后綴空白。.inf 文件分析器不會(huì)丟棄內(nèi)部空白,而是將它保留為字符串的一部分。
b、字符串很長(zhǎng),為了在文本編輯器中換行而包含了內(nèi)部換行符或回車符。用一對(duì)引號(hào)括起字符串可防止在第一個(gè)內(nèi)部換行符或回車符處截?cái)嘧址?
c、字符串包含分號(hào)。用一對(duì)引號(hào)括起字符串可防止在分號(hào)處截?cái)嘧址?
d、字符串以反斜杠結(jié)束。用一對(duì)引號(hào)括起字符串可防止將反斜杠解釋為行繼續(xù)符。
e、括起字符串的引號(hào)是字符串的一部分。要保留帶顯式引號(hào)的字符串,請(qǐng)用另一對(duì)引號(hào)括起這個(gè)帶引號(hào)的字符串。例如,用 ""somestring"" 保留字符串 "somestring"。
f、要保留單個(gè)引號(hào) ("),請(qǐng)?jiān)谠撐恢糜脙蓚(gè)引號(hào) ("")。例如,用 ""some""string"" 保留 "some"string"。
g、.inf 文件分析器不但丟棄最外面的一對(duì)引號(hào),而且將剩下的每對(duì)相鄰引號(hào)轉(zhuǎn)換為單個(gè)的引號(hào)字符。也就是說(shuō),"""some string""" 在分析后將變成 "some string"。
h、用下劃線 (_) 表示字符串關(guān)鍵字名稱中的空格。
規(guī)則9:節(jié)中的每項(xiàng)以換行符或回車符作為結(jié)束標(biāo)志。 因此,使用文本編輯器編寫 .inf 文件時(shí)一定不能任意插入換行符或回車符,因?yàn)?.inf 文件分析器可能將項(xiàng)或節(jié)的結(jié)束解釋到錯(cuò)誤的位置。但是.inf 文件分析器會(huì)忽略只包含換行符或回車符的空行或空白行。 請(qǐng)確保項(xiàng)中的值列中不包含不必要的空格。

三、INF文件的結(jié)構(gòu)

 [Version] 用于確認(rèn) .inf 文件的基本版本信息。包含以下項(xiàng):
Signature是必選項(xiàng),每個(gè)INF文件都必需指定的項(xiàng)。Signature是用來(lái)指定INF文件所能工作的系統(tǒng)版本。其值如下:
"$CHICAGO$" 表明這個(gè)inf文件可以用于windows 95以后的所有平臺(tái)上,目前來(lái)說(shuō)就是win98,winme,winnt4,win2k,winxp,win2k3。
"$Windows 95$" 表明這個(gè)inf文件可以用于windows 95以后的Win9x平臺(tái)上,目前來(lái)說(shuō)就是win98,winme。
"$Windows NT$" 表明這個(gè)inf文件可以用于WindowsNT系列的平臺(tái)上,包括winnt4,win2k,winxp,win2k3。WIN9x系列的操作系統(tǒng)的SetupAPI將會(huì)拒絕執(zhí)行這種類型的inf文件。

Provider 可選項(xiàng)。用于指定 .inf 文件創(chuàng)建者名的字符串。在驅(qū)動(dòng)INF文件也用于指定設(shè)備的生產(chǎn)商。
LayoutFile 可選項(xiàng)。對(duì)包含安裝該組件所需布局信息文件。一般只用于系統(tǒng)自帶的INF文件。用于指定源盤和文件路徑等信息。
Class 可選項(xiàng)。用于定義驅(qū)動(dòng)的類別名稱。如:Class=hdc。
ClassGuid 可選項(xiàng)。驅(qū)動(dòng)類別的GUID,其值的形式為{nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn},一般是唯一的。
CatalogFile 可選項(xiàng)。用于指定驅(qū)動(dòng)簽名的CatalogFile文件。
DriverVer 可選項(xiàng)。用于指定驅(qū)動(dòng)日期和版本號(hào)。如:DriverVer=07/01/2001,5.1.2600.5512。

[color=Red][SourceDisksNames][/color]節(jié),用于指定應(yīng)用程序所駐留的源磁盤上的名稱和路徑?梢灾付ǘ鄠(gè)源磁盤。
diskid = disk-description [,[tag-or-cab-file],[,path][,flags][,tag-file]]
diskid 必選項(xiàng)。標(biāo)識(shí)源盤的唯一號(hào)碼。如果有多個(gè)源盤,則每個(gè)源盤都必須有唯一的序號(hào)。
disk-description 必選項(xiàng)。說(shuō)明這張磁盤的內(nèi)容或用途的字符串或字符串主項(xiàng)。安裝程序向用戶顯示該字符串以標(biāo)識(shí)磁盤。此說(shuō)明文字用雙引號(hào)引起來(lái)。
tag-or-cab-file 可選項(xiàng)。tag或cabinet文件名。此說(shuō)明文字用雙引號(hào)引起來(lái)。
path 可選項(xiàng)。tag或cabinet文件在源磁盤的路徑。此說(shuō)明文字用雙引號(hào)引起來(lái)。省缺則默認(rèn)為源磁盤根目錄。
flags 可選項(xiàng)(Windows XP以后版本)。有效值為0x10。選用該項(xiàng)則tag-or-cab-file選項(xiàng)應(yīng)為cabinet文件,tag -file選項(xiàng)應(yīng)為tag文件。
tag -cab-file 可選項(xiàng)(Windows XP以后版本)。tag文件名。該文件應(yīng)在源磁盤根目錄或path項(xiàng)定義的路徑中,此說(shuō)明文字用雙引號(hào)引起來(lái)。
如:1=%DiskName%,file.tag,, 或者1="Codec4WMP Files","Code4WMP.cab",,"i386"



[SourceDisksFiles] 用于INF文件所駐留的源磁盤上指定文件的名稱和路徑。
filename = diskid[,[ subdir][, size]]
filename 必選項(xiàng),文件源名
diskid 必選項(xiàng)。必選項(xiàng)。指定包含源文件的磁盤的整數(shù)。此值和包含源文件的路徑必須定義在同一 .inf 文件的 SourceDisksFiles 節(jié)中包含文件的源盤序號(hào),而且必須是大于或等于 1 的值(0 是無(wú)效的盤號(hào)參數(shù)值)。
subdir 可選項(xiàng)。用于指定源文件所駐留磁盤上子目錄的字符串;該子目錄相對(duì)于SourceDisksNames 節(jié)中指定的路徑(如果有)。如果沒(méi)有使用該參數(shù),則默認(rèn)值是源盤上的根文件夾。 size 可選參數(shù),以字節(jié)為單位指定文件大小。
如:hdj.sys=1 或者h(yuǎn)dj.dll=1,hdj,999

  [DestinationDirs]  用于指定要進(jìn)行文件操作所需要的具體路徑。
[DefaultDestDir=dirid[,subdir]]
[filelist-section=dirid[,subdir]]
DefaultDestDir 可選項(xiàng)。用于定義默認(rèn)文件操作的目錄。
filelist-section 可選項(xiàng)。CopyFiles、RenFiles 或 DelFiles 節(jié)的名稱。
dirid 必選項(xiàng)。邏輯磁盤標(biāo)識(shí) (dirid)。-1至 32767及65535的數(shù)字為系統(tǒng)已定義的邏輯磁盤標(biāo)識(shí)。相當(dāng)于目錄宏。-1表示為絕對(duì)路徑。常見(jiàn)的對(duì)應(yīng)關(guān)系如下:
%10% Windows C:\Windows
%11% System32 C:\Windows\system32
%12% Drivers C:\Windows\system32\drivers
%17% inf C:\Windows\inf
%18% Help C:\Windows\Help
%20% Fonts C:\Windows\Fonts
%21% Viewers C:\Windows\system32\viewers
%23% Color C:\Windows\system32\spool\drivers\color
%24% Apps C:\
%25% Shared C:\Windows
%30% Boot C:\
%50% System16 C:\Windows\system
%51% Spool C:\Windows\system32\spool
%52% Spooldrivers C:\Windows\system32\spool\drivers\w32x86
%53% Userprofile C:\Documents and Settings\username
%54% Loader C:\
%55% Printprocessor C:\Windows\system32\spool\Prtprocs\w32x86
%16406% All Users\Start Menu C:\Documents and Settings\All Users\Start Menu
%16407% All Users\Start Menu\Programs C:\Documents and Settings\All Users\Start Menu\Programs
%16408% All Users\Start Menu\Programs\Startup C:\Documents and Settings\All Users\Start Menu\Programs\Startup
%16409% All Users\Desktop C:\Documents and Settings\All Users\Desktop
%16415% All Users\Favorites C:\Documents and Settings\All Users\Favorites
%16419% All Users\Application Data C:\Documents and Settings\All Users\Application Data
%16422% Program Files C:\Program Files
%16425% system 32 on RISC C:\Windows\system32
%16426% Program Files on RISC C:\Program Files
%16427% Program Files\Common C:\Program Files\Common
%16428% x86 Program Files\Common on RISC C:\Program Files\Common
%16429% All Users\Templates C:\Documents and Settings\All Users\Templates
%16430% All Users\Documents C:\Documents and Settings\All Users\Documents
%16437% All Users\Documents\My Music C:\Documents and Settings\All Users\Documents\My Music
%16438% All Users\Documents\My Pictures C:\Documents and Settings\All Users\Documents\My Pictures
 
 
[Strings] 這一節(jié)中定義了字符串變量,當(dāng)某些字符串頻繁地出現(xiàn)在INF文件中,為簡(jiǎn)化輸入,可以在該節(jié)中定義一個(gè)字符串變量,代表該字符串出現(xiàn)在INF文件中。
[string_key = value ]
strings-key 由字符和數(shù)字組成的唯一名稱。
value 由字母、數(shù)字或其他可打印字符組成的字符串。如果在項(xiàng)目類型中使用需要雙引號(hào)的相應(yīng)字符串主項(xiàng),則應(yīng)該用雙引號(hào)將它引起來(lái)。

 [Optional Components] 用于列出用戶單擊“控制面板”上的“添加/刪除程序”圖標(biāo),單擊“安裝 Windows”選項(xiàng)卡,然后單擊“從磁盤安裝”按鈕時(shí),顯示的 installsection 節(jié)。在列表中installsection節(jié)會(huì)當(dāng)作復(fù)選框顯示。如:
[Optional Components]
Codec4WMP

[Codec4WMP]
OptionDesc ="Codec4WMP addon pack"
Tip ="Codec4WMP by仙乃日"
Modes =0,1,2,3
CopyFiles=copy.sys,copy.wmp,copy.wmp.Codec4WMP
Registerdlls=register.codecs
AddReg=Codec4WMP.Reg
DelReg=deloldwmpreg
ProfileItems =codec.Config
UpdateInis=codec.Config1
 
安裝節(jié)
  [DefaultInstall] | [OtherInstall-section-name]
[CopyFiles=@filename | CopyFiles-section-name [,CopyFiles-section-name] ...]
[CopyINF=filename1.inf[,filename2.inf]...]
[AddReg= AddReg -section-name [,AddReg -section-name]...]
[Include=filename1.inf[,filename2.inf]...]
[Needs= Needs -section-name [,Needs -section-name]...]
[Delfiles= Delfiles -section-name [,Delfiles -section-name]...]
[Renfiles= Renfiles -section-name [,Renfiles -section-name]...]
[DelReg= DelReg -section-name [,DelReg -section-name]...]
[BitReg= BitReg -section-name [,BitReg -section-name]...]
[ProfileItems= ProfileItems -section-name [,ProfileItems -section-name]...]
[UpdateInis= UpdateInis -section-name [,UpdateInis -section-name]...]
[UpdateIniFields= UpdateIniFields -section-name [,UpdateIniFields -section-name]...]
[Ini2Reg= Ini2Reg -section-name [,Ini2Reg -section-name]...]
[RegisterDlls= RegisterDlls -section-name [,RegisterDlls -section-name]...]
[UnregisterDlls= UnregisterDlls -section-name [,UnregisterDlls -section-name]...][/color]


[DefaultInstall] [DefaultUnInstall] 是系統(tǒng)保留的節(jié)名,用于默認(rèn)的安裝和卸載。系統(tǒng)保留的安裝節(jié)名還包括:[ClassInstall32]|[ClassInstall32.nt] |[ClassInstall32.ntx86] |[ClassInstall32.ntia64] | [ClassInstall32.ntamd64] 等。這些節(jié)所包含的項(xiàng)都是一樣,項(xiàng)其實(shí)就是操作命令。

[CopyFiles-section-name]
destination-file-name[,source-file-name][,temporary-file-name][,flag]
CopyFiles-section-name是指執(zhí)行文件復(fù)制操作的節(jié)名,可以自定義。但必需在“安裝節(jié)”下列出。
destination-file-name目標(biāo)文件名。如果沒(méi)有給出源文件名,那么它也是源文件名。
source-file-name 可選項(xiàng)。源文件名。文件復(fù)制操作的源文件名不一定要和目標(biāo)文件名完全相同。
temporary-file-name 可選項(xiàng)。文件復(fù)制操作的臨時(shí)文件名。安裝程序?qū)?fù)制源文件,但給它臨時(shí)文件名。下一次啟動(dòng)操作系統(tǒng)時(shí),將把臨時(shí)文件名重命名為目標(biāo)文件名。
Flag 可選項(xiàng)。用于指定在復(fù)制進(jìn)程期間執(zhí)行某個(gè)操作的數(shù)字值。Flag值的具體含義如下:
COPYFLG_WARN_IF_SKIP 1 0x00000001 用戶嘗試跳過(guò)發(fā)生錯(cuò)誤后產(chǎn)生的文件時(shí)警告他。
COPYFLG_NOSKIP 2 0x00000002 關(guān)鍵安裝:不允許用戶跳過(guò)復(fù)制文件的操作。
COPYFLG_NOVERSIONCHECK 4 0x00000004 忽略版本檢查并且始終復(fù)制文件。這將會(huì)覆蓋較新的文件。
COPYFLG_FORCE_FILE_IN_USE 8 0x00000008 強(qiáng)制重命名。安裝程序?qū)⒃撐募鳛檎谑褂玫奈募M(jìn)行處理。只有文件已經(jīng)存在于用戶的計(jì)算機(jī)上時(shí)才會(huì)發(fā)生這種情況。
COPYFLG_NO_OVERWRITE 16 0x00000010 如果文件已經(jīng)在目標(biāo)計(jì)算機(jī)上,則不會(huì)復(fù)制。
COPYFLG_NO_VERSION_DIALOG 32 0x00000020 抑制版本沖突對(duì)話框,并且不會(huì)覆蓋較新的文件。
COPYFLG_OVERWRITE_OLDER_ONLY 64 0x00000040 不改寫目標(biāo)目錄中的現(xiàn)有文件。
COPYFLG_REPLACEONLY 1024 0x00000400 僅當(dāng)源文件存在于目標(biāo)目錄中時(shí)才將它復(fù)制到目標(biāo)目錄中。
COPYFLG_NODECOMP 2048 0x0000800 源文件已壓縮,復(fù)制時(shí)不解壓。
COPYFLG_REPLACE_BOOT_FILE 4096 0x00001000 當(dāng)源文件為系統(tǒng)文件時(shí)提示重新啟動(dòng)系統(tǒng)。
CE_COPYFLG_NO_DATE_DIALOG 536870912 0x20000000 如果目標(biāo)文件比源文件新,請(qǐng)勿復(fù)制此文件。
CE_COPYFLG_NODATECHECK 1073741824 0x40000000 改寫目標(biāo)文件時(shí)忽略數(shù)據(jù)。
CE_COPYFLG_SHARED 2147483648 0x80000000 考慮共享 DLL 時(shí),創(chuàng)建一個(gè)引用。

CopyFiles還可以使用文件名搭配 "@" 字符來(lái)強(qiáng)制復(fù)制單個(gè)文件 (在這種情況下源文件名和目標(biāo)文件名必須相同,并且不能使用臨時(shí)文件) 。如:
[aliide_Inst]
CopyFiles = @aliide.sys
CopyFiles = @pciidex.sys
CopyFiles = @atapi.sys
 
 
[DeleteFiles-section-name]
destination-file-name[,,,flag]
destination-file-name目標(biāo)文件名。如果沒(méi)有給出源文件名,那么它也是源文件名。
Flag 可選項(xiàng)。用于指定在復(fù)制進(jìn)程期間執(zhí)行某個(gè)操作的數(shù)字值。如果不將flag 參數(shù)設(shè)為1,在執(zhí)行 DelFiles 節(jié)時(shí)如果正在使用該文件,則不能從計(jì)算機(jī)上刪除此文件。
仙乃日 發(fā)表于 2010-7-28 08:20

 
[renamefiles-section-name]
new-file-name, old-file-name
new-file-name 新文件名。
old-file-name 舊文件名。
 
 
[addregistry-section-name]
reg_root,subkey,[value_name],[flags],[value]
指定在安裝期間向設(shè)備注冊(cè)表添加的子鍵或值,可以有選擇地設(shè)置它的值。
reg-root 必選項(xiàng)。注冊(cè)表根鍵,用于指定注冊(cè)表根位置的字符串。
例子:
[Codec4WMP.Reg]
hklm,"SOFTWARE\Microsoft\MediaPlayer\Player\Extensions\Descriptions","10",,"Lossy Audio Files (*.aac;*.m4a;*.mpc;*.mpp;*.mp+;*.ogg;*.ogm;*.spx)"
 
[Delregistry-section-name]
reg-root, subkey[, value-entry-name][, flags][, value]
reg-root 必選項(xiàng)。注冊(cè)表根鍵。
subkey 必選項(xiàng),子鍵或分支,所指定注冊(cè)表根下要設(shè)置的注冊(cè)表路徑的值。
value-entry-name可選項(xiàng)。值項(xiàng)名稱,用于指定現(xiàn)有子項(xiàng)值中的值名稱。
value 可選項(xiàng)(適用WindowsXP以后版本)。值項(xiàng)數(shù)據(jù)。
flags 可選項(xiàng)(適用WindowsXP以后版本)。操作參數(shù),用于指定控制注冊(cè)表操作的值。
參數(shù)具體如下:
FLG_DELREG_KEYONLY_COMMON 8192 0x00002000 刪除子鍵
FLG_DELREG_32BITKEY 16384 0x00004000 修改32位注冊(cè)表,默認(rèn)本地注冊(cè)表
FLG_DELREG_MULTI_SZ_DELSTRING 98306 0x00018002 刪除值項(xiàng)
 
更新ini文件操作
 
[UpdateInis-section-name]
ini-file,ini-section,[old-ini-entry], [new-ini-entry], [flags]
ini-file 必選項(xiàng),更改條目的 .ini文件的文件名。名必須是字符串或字符串主項(xiàng)(字符串主項(xiàng)的形式可為 %strkey%,其中 strkey 是在 .inf 文件的 Strings 節(jié)中定義的)。在任何情況下名稱都必須是有效文件名。名稱應(yīng)包括文件所在文件夾的名稱,但是文件夾名應(yīng)以邏輯目錄標(biāo)識(shí)符 (LDID) 指定,而不是實(shí)際名稱。在安裝期間安裝程序?qū)⒂脤?shí)際名稱替換 LDID。LDID 的形式為 %ldid%,其中 ldid 是預(yù)定義標(biāo)識(shí)符或在 DestinationDirs 節(jié)中定義的標(biāo)識(shí)符。注意常數(shù) LDID_BOOT 和 LDID_BOOTHOST 被替換,在路徑中加上反斜線。例如,LDID_BOOT 用 C:\ 替換。但是在 .inf 文件中可以使用反斜線,也可以不使用。例如,在引導(dǎo)驅(qū)動(dòng)器的根中,可以使用“%30%boot.ini”和“%30%\boot.ini”來(lái)引用 BOOT.ini。
ini-section 必選項(xiàng),更改條目的.ini 文件中的節(jié)名。
old-ini-entry 可選項(xiàng),現(xiàn)有條目,常用形式為 Key=Value。
new-ini-entry 可選項(xiàng),替換、刪除或添加的條目,常用形式為 Key=Value。主項(xiàng)或值都可以指定可替代字符串。例如,在參數(shù) new-ini-entry 中指定的主項(xiàng)或值可能為 %String1%,替代 %String1% 的字符串定義在 .inf 文件的 Strings 節(jié) 指定主項(xiàng)和值時(shí)可以使用星號(hào) (*) 通配符,可以正確地解釋此符號(hào)。
flags 可選項(xiàng)。操作參數(shù)。

這個(gè)操作項(xiàng)在win9x的系統(tǒng)比較經(jīng)常使用。
 
[UpdateIniFields-section-name]
ini-file,ini-section,profile-name,[old-field],[new-field],[flags]
ini-file 必選項(xiàng),要更改的 .ini 文件的文件名。
ini-section 必選項(xiàng),.ini 文件中要更改的節(jié)名。
profile-name 必選項(xiàng),.ini 文件中要更改的條目名稱。
rold-field 可選項(xiàng)。.ini 文件中要?jiǎng)h除的“字段”值。
new-field 可選項(xiàng),要添加.ini 文件而原來(lái)沒(méi)有的字段值。
flags 可選項(xiàng)。
 
[Ini2Reg-section-name]
ini-file,ini-section,[ini-key],reg-root,subkey[,flags]
ini-file 必選項(xiàng),要復(fù)制到注冊(cè)表的 .ini 文件的文件名。
ini-section 必選項(xiàng),要復(fù)制到注冊(cè)表的.ini文件中的節(jié)名。
ini-key 可選項(xiàng),要復(fù)制到注冊(cè)表的 .ini 文件中的項(xiàng)名。如果 ini-key 為空,則將整節(jié)復(fù)制到指定的注冊(cè)表項(xiàng)。
reg-root 必選項(xiàng)。目標(biāo)注冊(cè)表根鍵。
subkey 必選項(xiàng),目標(biāo)子鍵或分支。
flags 可選項(xiàng)。操作參數(shù)。
 

[RegisterDlls-section-name]
dirid, [subdir], filename, registration flags[, [optional timeout][, argument]]
dirid 必選項(xiàng),是邏輯磁盤標(biāo)識(shí)或在DestinationDirs 節(jié)中定義的標(biāo)識(shí)符
subdir 可選項(xiàng),目錄路徑。
filename必選項(xiàng)。動(dòng)態(tài)鏈接庫(kù)名稱。
registration flags 必選項(xiàng),操作參數(shù),用于指定控制動(dòng)態(tài)鏈接庫(kù)注冊(cè)操作的值:
FLG_REGSVR_DLLREGISTER 1 0x00000001 調(diào)用DllRegisterServer函數(shù) ,動(dòng)態(tài)鏈接庫(kù)系統(tǒng)登錄(即注冊(cè))
FLG_REGSVR_DLLINSTALL 2 0x00000002 調(diào)用DllInstall函數(shù),動(dòng)態(tài)鏈接庫(kù)系統(tǒng)登錄(即注冊(cè))
optional timeout 可選項(xiàng),延時(shí)(秒),缺省延時(shí)是60 秒。
argument 可選項(xiàng),注冊(cè)命令。缺省是“/RegServer”,用于指定控制注冊(cè)表操作的值。
例子:
[register.codecs]
11,,msvcp71.dll,1
11,,msvcr71.dll,1
11,,pncrt.dll,1
11,,rmoc3260.dll,1
11,,DCBassSource.ax,1
 
 
[UnregisterDlls-section-name]
dirid, [subdir], filename, registration flags[, [optional timeout][, argument]]
dirid 必選項(xiàng),是邏輯磁盤標(biāo)識(shí)或在 DestinationDirs 節(jié)中定義的標(biāo)識(shí)符
subdir 可選項(xiàng),目錄路徑。
filename必選項(xiàng)。動(dòng)態(tài)鏈接庫(kù)名稱。
registration flags 必選項(xiàng),操作參數(shù),用于指定控制動(dòng)態(tài)鏈接庫(kù)注冊(cè)操作的值:
FLG_REGSVR_DLLREGISTER 1 0x00000001 調(diào)用DllUnRegisterServer函數(shù) ,動(dòng)態(tài)鏈接庫(kù)系統(tǒng)注銷
FLG_REGSVR_DLLINSTALL 2 0x00000002 調(diào)用DllInstall函數(shù),動(dòng)態(tài)鏈接庫(kù)系統(tǒng)登錄(即注冊(cè))
optional timeout 可選項(xiàng),延時(shí)(秒),缺省延時(shí)是60 秒。
argument 可選項(xiàng),注冊(cè)命令。缺省是“/UnRegServer”,用于指定控制注冊(cè)表操作的值。
thesnow 發(fā)表于 2010-7-28 14:46

 
 
[ProfileItems-section-name]
Name=link-name
[,name-attributes]
CmdLine=dirid,[subdir],filename
[SubDir=path]
[WorkingDir=wd-dirid,wd-subdir]
[IconPath=icon-dirid,[icon-subdir],icon-filename]
[IconIndex=index-value]
[HotKey=hotkey-value] [Infotip=info-tip]
[DisplayResource="ResDllPath\ResDll",ResID]
link-name 必選項(xiàng),指定程序目錄(圖標(biāo))名稱。名必須是字符串或字符串主項(xiàng)(字符串主項(xiàng)的形式可為 %strkey%,其中 strkey 是在 .inf 文件的 Strings 節(jié)中定義的)。DisplayResource省略,則程序圖標(biāo)的顯示名稱為link-name。
name-attributes 可選項(xiàng),表明程序目錄(圖標(biāo))屬性或具體操作的參數(shù)。
FLG_PROFITEM_CURRENTUSER 1 0x00000001 程序目錄(圖標(biāo))屬當(dāng)前用戶,不用本值則程序目錄(圖標(biāo)) 屬所有用戶
FLG_PROFITEM_DELETE 2 0x00000002 刪除程序目錄(圖標(biāo)),不用本值則添加程序目錄(圖標(biāo))
FLG_PROFITEM_GROUP 4 0x00000004 link-name是開(kāi)始菜單\程序下(Start\Programs)的程序目錄(group),不用本值則link-name是程序圖標(biāo)(item)而不是程序目錄。
CmdLine 添加程序圖標(biāo)必選項(xiàng),指定程序圖標(biāo)的目標(biāo)(快捷方式的命令)。
dirid 必選項(xiàng),目標(biāo)位置,是邏輯磁盤標(biāo)識(shí)或在DestinationDirs 節(jié)中定義的標(biāo)識(shí)符。
subdir 可選項(xiàng),目標(biāo)所在目錄。
filename 必選項(xiàng),可執(zhí)行文件名或命令。
SubDir 可選項(xiàng),指定程序目錄(圖標(biāo)) 所在開(kāi)始菜單\程序下的路徑。
SubDir省略,則默認(rèn)程序目錄(圖標(biāo))在開(kāi)始菜單\程序下。
WorkingDir 可選項(xiàng),指定程序圖標(biāo)的目標(biāo)起始位置(工作目錄)。
WorkingDir省略,則目標(biāo)起始位置默認(rèn)為程序圖標(biāo)所在目錄。
wd-dirid 必選項(xiàng),是邏輯磁盤標(biāo)識(shí)或在 DestinationDirs 節(jié)中定義的標(biāo)識(shí)符。
wd-subdir 可選項(xiàng),工作目錄。
IconPath 可選項(xiàng),指定程序圖標(biāo)的目標(biāo)圖標(biāo)。
IconPath省略,則目標(biāo)圖標(biāo)默認(rèn)為CmdLine指定程序的圖標(biāo)
icon-dirid 必選項(xiàng),是邏輯磁盤標(biāo)識(shí)或在 DestinationDirs 節(jié)中定義的標(biāo)識(shí)符。
icon-subdir 可選項(xiàng),所在目錄。
icon-filename 必選項(xiàng),圖標(biāo)名。
IconIndex 可選項(xiàng),指定程序圖標(biāo)的目標(biāo)索引。
IconIndex省略,則目標(biāo)備注默認(rèn)為CmdLine指定程序的索引 。
HotKey 可選項(xiàng),指定程序圖標(biāo)的目標(biāo)熱鍵(快捷鍵)。
Infotip 可選項(xiàng),指定程序圖標(biāo)的目標(biāo)備注(字符串的形式可為 %strkey%,其中 strkey 是在 .inf 文件的 Strings 節(jié)中定義的)。如InfoTip = "@%11%\shell32.dll,-22531"即為“使用屏幕“計(jì)算器”執(zhí)行基本的算術(shù)任務(wù)“。
DisplayResource WindowsXP以后版本可選項(xiàng),指定動(dòng)態(tài)鏈接庫(kù)的資源作為程序圖標(biāo)的顯示名稱,其中:ResDllPath為動(dòng)態(tài)鏈接庫(kù)文件所在路徑,ResDll為動(dòng)態(tài)鏈接庫(kù)文件,ResID為Resource ID即資源的ID號(hào)。如: DisplayResource="%11%\shell32.dll",22019顯示名稱“計(jì)算器”。
 
[ControlFlags]
ExcludeFromSelect = *
刪除所有(如果*指定)或設(shè)備,從某些用戶界面顯示,用戶從中選擇一個(gè),預(yù)計(jì)安裝特定設(shè)備指定列表。
對(duì)于基于NT的操作系統(tǒng),指定的設(shè)備將不會(huì)顯示在添加硬件向?qū),但?huì)找到新的硬件和硬件更新向?qū)э@示。

對(duì)于Windows 9x/Me,指定的設(shè)備將不會(huì)顯示任何設(shè)備選擇向?qū)А?br /> 
rundll32.exe setupapi,InstallHinfSection MPS_MP_HAL 132 %windir%\inf\hal.inf
VOID CALLBACK InstallHinfSection(
__in HWND hwnd,
__in HINSTANCE ModuleHandle,
__in PCTSTR CmdLineBuffer,
__in INT nCmdShow
);

Value Description
0 System provided INF. 系統(tǒng)提供的INF。
128 Set the default path of the installation to the location of the INF. This is the typical setting. 設(shè)置默認(rèn)的安裝路徑的INF位置。這是典型的設(shè)置。

+0 Never reboot the computer. 不重新啟動(dòng)計(jì)算機(jī)。
+1 Reboot the computer in all cases. 在任何情況下重新啟動(dòng)計(jì)算機(jī)。
+2 Always ask the users if they want to reboot. 始終詢問(wèn)用戶是否要重新啟動(dòng)。
+3 Reboot the computer if necessary without asking user for permission. 如有必要,重新啟動(dòng)計(jì)算機(jī)不詢問(wèn)用戶。

+4 If a reboot of the computer is necessary, ask the user for permission before rebooting 如果計(jì)算機(jī)重新啟動(dòng)是必要的,在重新啟動(dòng)前詢問(wèn)。

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過(guò)難過(guò)
    • 5 囧
    • 3 圍觀圍觀
    • 2 無(wú)聊無(wú)聊

    熱門評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)