日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

设备驱动程序INF文件

發(fā)布時(shí)間:2025/4/16 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 设备驱动程序INF文件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

??INF文件是一個(gè)文本文件,由許多按層次結(jié)構(gòu)排列的節(jié)組成,他們以方括號(hào)中的節(jié)名稱開始,如[Version][Manufacturer]等,后面是改接所含有的各個(gè)項(xiàng),如SignatureDriverVer等。節(jié)中各項(xiàng)的基本定義格式為

entry=value[,value…]

???????其中,“entry”標(biāo)示項(xiàng)名稱,“value”標(biāo)示該想的取值。節(jié)名和項(xiàng)名稱都不區(qū)分大小寫,且對于Windows 98,其必須小于28個(gè)字符;對于Windows 2000,其長度的最大值為255個(gè)字節(jié)。下表是INF文件中常用的節(jié)。

INF文件中常用的節(jié)

節(jié)

說明

Version

INF文件的開始

SourceDisksNames

指明去的那個(gè)程序所在的磁盤或CD-ROM

SourceDisksFiles

指明驅(qū)動(dòng)程序的文件名

Destination

指明INF文件和驅(qū)動(dòng)程序的目標(biāo)文件

Manufacturer

指明供應(yīng)商及其對應(yīng)Models節(jié)的名稱

Models

指明Install/DDInstall節(jié)的名稱、設(shè)備的硬件ID等信息

InstallWindows 98

InstallWindows 2000

指明需復(fù)制的文件、想注冊表中添加的內(nèi)容等信息

DDInstall.Services

僅適用于Windows 2000

指明驅(qū)動(dòng)程序安裝的詳細(xì)信息

String

指明一系列字符串

?

1Version節(jié)

???????Version節(jié)通常作為INF文件的開始,下表列出了其包含的各項(xiàng)。所有INF文件都必須含有Version節(jié)及其Signature項(xiàng)

Version節(jié)中的各項(xiàng)

?

項(xiàng)

說明

Signature

指明驅(qū)動(dòng)程序的簽名,其取值為:$Windows NT$$Windows 95$$Chicago$

Class

指明驅(qū)動(dòng)程序所屬的類別

ClassGuid

指明設(shè)備類的GUID,其格式為:{nnnnnnnn-nnnn-nnnn-nnnnnnnnnnnn}

Provider

指明該INF文件的供應(yīng)商

LayoutFile

僅由操作系統(tǒng)內(nèi)部提供的INF文件使用

CatalogFile

指明數(shù)字簽名文件的文件名,其擴(kuò)展名為.cat

DriverVer

指明驅(qū)動(dòng)程序的版本信息,其格式為:mm/dd/yyyy[,x.y.v.z]

注:①n代表一個(gè)16進(jìn)制數(shù)

?

???????下面對主要的各項(xiàng)進(jìn)行詳細(xì)介紹。

.Signature項(xiàng):指明驅(qū)動(dòng)程序的簽名。對于Windows 98Windows 2000下的USB設(shè)備驅(qū)動(dòng)程序,該項(xiàng)的取值通常為“$Chicago$”。

.ClassClassGuid項(xiàng):指明驅(qū)動(dòng)程序所屬的設(shè)備類別及其GUID,其取值情況見下表。

常用設(shè)備類別及其GUID

?

Class

ClassGuid

說明

1394

6BDD1FC1-810F-11D0-BEC7-08002BE2092F

1394主控制器

CDROM

4D36E965-E325-11CE-BFC1-08002BE10318

CD-ROM驅(qū)動(dòng)器

DiskDrive

4D36E967-E325-11CE-BFC1-08002BE10318

磁盤驅(qū)動(dòng)器

Display

4D36E968-E325-11CE-BFC1-08002BE10318

顯示適配器

FDC

4D36E969-E325-11CE-BFC1-08002BE10318

軟盤驅(qū)動(dòng)器

HDC

4D36E96A-E325-11CE-BFC1-08002BE10318

硬盤控制器

HIDClass

745a17a0-74d3-11d0-b6fe-00a0c90f57da

人機(jī)接口設(shè)備

Keyboard

4D36E96B-E325-11CE-BFC1-08002BE10318

鍵盤

Modem

4d36e96c-e325-11ce-bfc1-08002be10318

調(diào)制解調(diào)器

Monitor

4d36e96e-e325-11ce-bfc1-08002be10318

監(jiān)視器

Mouse

4d36e96f-e325-11ce-bfc1-08002be10318

鼠標(biāo)

Net

4d36e972-e325-11ce-bfc1-08002be10318

網(wǎng)絡(luò)適配器

Ports

4d36e978-e325-11ce-bfc1-08002be10318

端口(COM&LPT

Printer

4d36e979-e325-11ce-bfc1-08002be10318

打印機(jī)

System

4d36e97d-e325-11ce-bfc1-08002be10318

系統(tǒng)設(shè)備

TapeDrive

6D807884-7D21-11CF-801C-08002BE10318

磁帶驅(qū)動(dòng)器

USB

36FC9E60-C465-11CF-8056-444553540000

USB

?

.DriverVer項(xiàng):指明驅(qū)動(dòng)程序的版本信息。其“mm/dd/yyyy”代表月//年;“x.y.v.z”代表驅(qū)動(dòng)程序的版本號(hào),它是可選的。

2.SourceDiskNames節(jié)

???????SourceDiskNames節(jié)指明設(shè)備驅(qū)動(dòng)程序所在的磁盤或CD-ROM,其各項(xiàng)的格式如下:

diskid=disk-description,disk-label,disk-serial-number???(Windows 98)

diskid=disk-description[,[tagfile][,unused,path]]??(Windows 2000)

???????其中,“disked”指出磁盤驅(qū)動(dòng)器的編號(hào),它是正整型數(shù),通常從1開始,且不能重復(fù);“disk-description”表示磁盤的描述信息,他通常為一個(gè)字符串。對于Windows 98,“disk-label”指出磁盤的卷標(biāo);“disk-serial-numbe”指出磁盤的序列號(hào)。對于Windows 2000,“tagfile”指出磁盤標(biāo)簽文件的文件名;“unused”保留未用;“path”指出驅(qū)動(dòng)程序所在的路徑;“[ ]”表示可選參數(shù)。

3.SourceDiskFiles節(jié)

???????SourceDiskFiles節(jié)指明設(shè)備驅(qū)動(dòng)程序的文件愛你名,其各項(xiàng)格式如下:

filename=diskid[,subdir]?(Windows 98)

filename=diskid[,[,subdir][,size]]???(Windows 2000)

???????其中,“filename”指出驅(qū)動(dòng)程序的文件名;“diskid”指出磁盤驅(qū)動(dòng)器的編號(hào);“subdir”指出該文件在磁盤上的路徑;“size”指出該文件未經(jīng)壓縮時(shí)的大小,以字節(jié)為單位。

4.DestinationDirs節(jié)

???????DestinationDirs節(jié)指明INF文件和設(shè)備驅(qū)動(dòng)程序的目標(biāo)目錄。當(dāng)INF文件使用CopyFilesDelFilesRenFiles指令時(shí),則必須包含該節(jié)。其各項(xiàng)的格式如下:

DefaultDestDir=dirid[,subdir]

File-list-section=dirid[,subdir]

???????其中,“DefaultDestDir”是一個(gè)項(xiàng)名稱,代表文件復(fù)制、刪除、重命名操作的缺色很難干目標(biāo)目錄;“file-list-section”指出CopyFilesDelFilesRenFiles指令所引用的節(jié);“dirid”指出目標(biāo)目錄值,見下表;“subdir”指出dirid目錄下的子目錄。

DestinationDirs節(jié)中的常用dirid

?

dirid

目標(biāo)目錄

dirid

目標(biāo)目錄

10

Windows目錄:%windir%

17

INF目錄

11

系統(tǒng)目錄

Windows 98:%windir%/system

Windows 2000:%windir%/system32

18

幫助目錄

20

字體目錄

12

驅(qū)動(dòng)程序目錄

Windows 98:%windir%/system/IoSubsys

Windows 2000:%windir%/system32/drivers

23

顏色目錄

24

應(yīng)用程序目錄(Windows2000

13

命令目錄(Windows98

25

共享目錄

14

控制面板目錄(Windows98

50

%windir%/system(Windows2000)

15

打印機(jī)目錄(Windows98

54

Ntldr.exeosloader.exe所在的目錄(Windows2000

16

工作組目錄(Windows98

55

打印處理器目錄(Windows2000

?

5.Manufacturer節(jié)

???????Manufacturer節(jié)指明供應(yīng)商及其對應(yīng)Models接的名稱,其各項(xiàng)的格式如下:

%strkey%=models-section-name

???????其中,“strkey”代表設(shè)備制造的名字,其字符串值在String節(jié)中定義;“models-section-name”指出Models節(jié)的名稱。

6.Models節(jié)

???????Models節(jié)指明Install/DDInstall節(jié)的名稱、設(shè)備的硬件ID和兼容ID等信息,其節(jié)名稱由Manufacturer節(jié)指定。其各項(xiàng)的格式如下:

device-description=install-section-name,hw-id[,compatiable-id…]

???????其中,“device-description”指出設(shè)備的表述信息,他可以是一個(gè)字符串,也可以使一個(gè)%strkey%;“install-section-name”指出Install/DDInstall節(jié)的名稱;“hw-id”指出設(shè)備的硬件ID;“compatiable-id”指出設(shè)備的兼容ID

7. Install/DDInstall節(jié)

???????Install/DDInstall節(jié)指明需復(fù)制的文件、想注冊表中添加的內(nèi)容等信息,其節(jié)名稱由Models節(jié)指定。下表列出了其包含的常用項(xiàng)。

Install/DDInstall節(jié)中的常用項(xiàng)

?

項(xiàng)

說明

DriverVer

指明驅(qū)動(dòng)程序的版本信息,格式為:mm/dd/yyyy[,x.y.z]

CopyFiles

指明需復(fù)制的文件,格式為:

CopyFiles=@filename|file-list-section[,file-list-section]...

AddReg

指明向注冊表中添加的其他INF文件按,格式為:

AddReg=add-registry-section[,add-registry-section]…

Include

指明安裝時(shí)需要的其他INF文件,格式為:

Include=filename.inf[,filename2.inf]…

Needs

指明安裝時(shí)所需的特定INF文件,格式為:

Needs=inf-section-name[,inf-section-name]…

Delfiles

指明需刪除的文件,格式為:

Delfiles=inf-section-name[,inf-section-name]…

RenFiles

指明需重命名的文件,格式為:

Renfiles=inf-section-name[,inf-section-name]…

DelReg

指明需刪除的注冊表內(nèi)容,格式為:

DelReg=del-registry-section[,del-registry-section]…

?

???????Install/DDInstall節(jié)中的常用項(xiàng)的詳細(xì)介紹。

?????CopyFiles項(xiàng):它是Install/DDInstall節(jié)中的一個(gè)基本指令,用于指明需要復(fù)制的文件。其“filename”指出目標(biāo)文件名;“file-list-section”是其創(chuàng)建的文件列表節(jié),該節(jié)格式為

[file-list-section]

destination-file-name[,source-file-name][,temporary-file-name][,flag]

???????其中,“destination-file-name”指出目標(biāo)文件名;“source-file-name”指出源文件名,如果其和目標(biāo)文件名相同,則可忽略該參數(shù);“temporary-file-name”指出復(fù)制操作過程中所需要的臨時(shí)文件名,他只適用于Windows 98;“flag”指出該文件的一些處理方法,其取之情況如下表。

CopyFiles項(xiàng)中的flag參數(shù)

?

符號(hào)

說明

0x00000400

COPYFLG_REPLACEONLY

僅替換目標(biāo)目錄中的文件

0x00000800

COPYFLG_NODECOMP

復(fù)制并不解壓縮

0x00000008

COPYFLG_FORCE_FILE_IN_USE

將源文件賦值為臨時(shí)文件名,以重新命名

0x00000010

COPYFLG_NO_OVERWRITE

不替換原有文件

0x00001000

COPYFLG_REPLACE_BOOT_FILE

強(qiáng)制用戶重新引導(dǎo)系統(tǒng)

0x00002000

COPYFLG_NOPRUNE

強(qiáng)制復(fù)制文件

0x00000020

COPYFLG_NO_VERSION_DIALOG

不覆蓋新版本的文件

0x00000004

COPYFLG_NOVERSIONCHECK

可覆蓋任何版本的文件

0x00000040

COPYFLG_OVERWRITE_ORDER_ONLY

僅覆蓋舊版本的文件

0x00000001

COPYFLG_WARN_IF_SKIP

當(dāng)用戶跳過文件時(shí)發(fā)出警告

0x00000002

COPYFLG_NOSKIP

不允許用戶跳過文件

?

?????AddReg項(xiàng):它是Install/DDInstall節(jié)所必須包含的指令,用于指明需項(xiàng)注冊表中添加的內(nèi)容。其“add-registry-section”是它創(chuàng)建的添加注冊表節(jié),該節(jié)的格式為

[add-registry-section]

reg-root, [subkey], [value-entry-name], [flags], [value]

其中,“reg-root”指出注冊表樹的根目錄,它的取值在下表中;“subkey”指出reg-root下的子目錄(或稱子鍵);“value-entry-name”指出要增加的注冊表值;“flags”指出其對注冊表的一些處理方法,取值在下面的flags表中;“value”指出新增加注冊表值的數(shù)據(jù)。

AddReg項(xiàng)中的reg-root參數(shù)

?

說明

HKCR

HKEY_CLASSES_ROOT

HKCU

HKEY_CURRENT_USER

HKLM

HKEY_LOCAL_MACHINE

HKU

HKEY_USER

HKR

被安裝設(shè)備的注冊表鍵

?

AddReg項(xiàng)中的flags參數(shù)

?

符號(hào)

說明

0x00000000

FLG_ADDREG_TYPE_SZ

valueREG_SZ類型

0x00000001

FLG_ADDREG_BINVALUETYPE

value2進(jìn)制數(shù)據(jù)

0x00000002

FLG_ADDREG_NOCLOBBER

不替換已有注冊表中的value

0x00000004

FLG_ADDREG_DELVAL

從注冊表中刪除subkey

value-entry-name

0x00000010

FLG_ADDREG_KEYONLY

僅建立subkey,忽略value-entry-name

value

0x00000020

FLG_ADDREG_OVERWRITEONLY

僅當(dāng)value-entry-name時(shí)替換value

0x00010000

FLG_ADDREG_TYPE_MULTI_SZ

valueREG_MULTI_SZ類型

0x00000008

FLG_ADDREG_APPEND

添加value至已有注冊表值

0x00020000

FLG_ADDREG_TYPE_EXPEND_SZ

valueREG_EXPAND_SZ類型

0x00010001

FLG_ADDREG_TYPE_DWORD

valueREG_DWORD類型

0x00020001

FLG_ADDREG_TYPE_NONE

valueREG_NONE類型(Windows2000

?

?????DelFiles項(xiàng):它是Install/DDInstall節(jié)中的可選指令,用于指明需刪除的文件。其“file-list-section”是它創(chuàng)建的文件列表節(jié),該節(jié)的格式為

[file-list-section]

destination-file-name[,,,flag]

???????其中,“destination-file-name”指出目標(biāo)文件名;“flag”指出該文件的一些處理方法,其取值如下表。

DelFiles項(xiàng)中的flag參數(shù)

?

符號(hào)

說明

0x0000001

DELFLG_IN_USE

在其安裝處理操作完成后再刪除該文件

0x0001000

DELFLG_IN_USE1

功能與DELFLG_IN_USE一樣,僅適用Windows2000

?

RenFiles項(xiàng):它是Install/DDInstall節(jié)中的可選指令,用于指明需重命名的文件。其“file-list-section”是它創(chuàng)建的文件列表節(jié),該節(jié)的格式為

[file-list-section]

new-dest-file-name, old-source-file-name

???????其中,“new-dest-file-name”指出該文件的新文件名;“old-source-file-name”指出其原有文件名。

DelReg項(xiàng):它是Install/DDInstall節(jié)中的可選指令,用于指明需從注冊表中刪除的內(nèi)容。其“del-registry-section”是它創(chuàng)建的刪除注冊表節(jié),該節(jié)的格式為

[del-registry-section]

reg-root, subkey [,value-entry-name]

???????其中,“reg-root”指出該注冊表樹中的根目錄,取值與AddRegret-root相同;?subkey”指出reg-root下的子目錄(或稱子鍵);“value-entry-name”指出要?jiǎng)h除的注冊表值。

8.DDInstall.Services節(jié)

???????DDInstall.Services節(jié)指明驅(qū)動(dòng)程序安裝的詳細(xì)信息,他只是用于Windows 2000.他的節(jié)名稱為[install-section-name.Services],其“install-section-name”由Models節(jié)指定。下表列出了其包含的常用項(xiàng)。

DDInstall.Services節(jié)中的常用項(xiàng)

?

項(xiàng)

說明

AddService

控制驅(qū)動(dòng)程序的安裝過程,格式為

AddService=ServiceName,[flags],service-install-section

[,event-log-install-section[,[EventLogType][,EventName]]]…

DelService

刪除一個(gè)或多個(gè)已有的驅(qū)動(dòng)程序,格式為

DelService=ServiceName [,[flags][,[EventLogType][,EventName]]]…

Include

指明安裝時(shí)所需的其他INF文件,格式為

Include =filename.inf [,filename2.inf]…

Needs

之敏感轉(zhuǎn)世所需要的特定INF文件,格式為

Needs = inf-section-name[,inf-section-name]…

?

主要項(xiàng)進(jìn)行詳細(xì)介紹。

?????AddService項(xiàng):它是DDInstall.Services節(jié)所必須包含的指令,用于控制設(shè)備驅(qū)動(dòng)程序的安裝過程。其“ServiceName”指出驅(qū)動(dòng)程序的名字;“flags”指出一個(gè)或多個(gè)系統(tǒng)定義的標(biāo)識(shí),其取值情況如下表;“event-log-install-section”是其創(chuàng)建的事件日志安裝,下表中列出了該節(jié)所包含的常用項(xiàng);“service-install-section”是其創(chuàng)建的服務(wù)安裝節(jié),下表中列出了該節(jié)所包含的常用項(xiàng);“EventLogType”指出事件日志的類型,其取值為SystemSecurityApplication;“EventName”指出事件日志的名字。

AddService項(xiàng)的常用flags參數(shù)

?

符號(hào)

說明

0x00000002

SPSVCINST_ASSOCSERVICE

指明其為PnP功能驅(qū)動(dòng)程序

0x00000008

SPSVCINST_NOCLOBBER_DISPLAYNAME

不覆蓋指定服務(wù)的名字

0x00000100

SPSVCINST_NOCLOBBER_DESCRIPTION

不覆蓋指定服務(wù)的描述

0x00000010

SPSVCINST_NOCLOBBER_STARTTYPE

不覆蓋指定服務(wù)的啟動(dòng)類型

0x00000020

SPSVCINST_NOCLOBBER_ERRORCONTROL

不覆蓋指定服務(wù)的差錯(cuò)控制值

?

event-log-install-section節(jié)中的常用項(xiàng)

?

項(xiàng)

說明

AddReg

指明向注冊表中添加的內(nèi)容,格式如下

AddReg=add-registry-section[,add-registry-section]…

DelReg

指明需刪除的注冊表內(nèi)容,格式如下

DelReg=del-registry-section[,del-registry-section]…

BitReg

有效但幾乎無用,格式如下

BitReg=bit-registry-section[,bit-registry-section]…

DisplayName

驅(qū)動(dòng)程序的名字,為字符串值

Description

驅(qū)動(dòng)程序的描述,為字符串值

ServiceType

驅(qū)動(dòng)程序的類型,為特定16進(jìn)制數(shù)

StartType

驅(qū)動(dòng)程序的啟動(dòng)類型,為特定16進(jìn)制數(shù)

ErrorControl

驅(qū)動(dòng)程序的差錯(cuò)控制級別,為特定16進(jìn)制數(shù)

ServiceBinary

驅(qū)動(dòng)程序的完整路徑名:%dirid% /filename

?

一下是對event-log-install-section節(jié)中的常用項(xiàng)的主要項(xiàng)進(jìn)行詳細(xì)介紹。

<1>ServiceType項(xiàng):指明驅(qū)動(dòng)程序的類型,取值情況如下表。

ServiceType項(xiàng)的取值

?

符號(hào)

說明

0x00000001

SERVICE_BOOT_START

內(nèi)核模式驅(qū)動(dòng)程序

0x00000002

SERVICE_KERNEL_FILE_SYSTEM_DRIVER

上層網(wǎng)絡(luò)驅(qū)動(dòng)程序或文件系統(tǒng)

0x00000010

SERVICE_WIN32_OWN_PROCESS

Win32應(yīng)用程序

0x00000020

SERVICE_WIN32_SHARE_PROCESS

Win32應(yīng)用程序

?

<2>StartType項(xiàng):指明驅(qū)動(dòng)程序的啟動(dòng)類型,其取值情況如下表。

StartType項(xiàng)的取值

?

符號(hào)

說明

0x0

SERVICE_BOOT_START

由操作系統(tǒng)加載程序啟動(dòng)

0x1

SERVICE_SYSTEM_START

由操作系統(tǒng)初始化過程中啟動(dòng)

0x2

SERVICE_AUTO_START

由服務(wù)控制管理器啟動(dòng)

0x3

SERVICE_DEMAND_START

PnP管理器或服務(wù)控制管理器按需啟動(dòng)

0x4

SERVICE_DISABLE

禁止啟動(dòng)

?

<3>ErrorControl項(xiàng):指明驅(qū)動(dòng)程序的差錯(cuò)控制級別,其取值情況如下表。

ErrorControl項(xiàng)的取值

?

符號(hào)

說明

0x0

SERVICE_ERROR_IGNORE

不顯示警告信息

0x1

SERVICE_ERROR_NORMAL

顯示警告信息

0x2

SERVICE_ERROR_SERVICE

當(dāng)驅(qū)動(dòng)程序加載失敗時(shí),系統(tǒng)將使用其注冊的LastKnownGood重試,并忽略其后的錯(cuò)誤

0x3

SERVICE_ERROR_CRITICAL

當(dāng)驅(qū)動(dòng)程序加載失敗時(shí),系統(tǒng)將使用其注冊的LastKnownGood重試,并對其后的錯(cuò)誤進(jìn)行檢驗(yàn)

?

?????DelService項(xiàng):它是DDInstall.Service節(jié)中的可選指令,用于刪除一個(gè)或多個(gè)已有的設(shè)備驅(qū)動(dòng)程序。其“ServiceName”指出驅(qū)動(dòng)程序的名字;“flags”指出一個(gè)或多個(gè)系統(tǒng)定義的標(biāo)識(shí),取值見下表;“EventLogType”指出事件日志的類型,其取值為SystemSecurityApplication;“EventName”指出事件日志的名字。

DelService項(xiàng)的flags參數(shù)

?

符號(hào)

說明

SPSVCINST_DELETEEVENTLOGENTRY

刪除與ServiceName有關(guān)的事件日志

SPSVCINST_STOPSERVICE

在刪除之前首先停止服務(wù)

?

9String節(jié)

???????String節(jié)指明一些列字符串,其所含各項(xiàng)的格式為

strkey=[“]some string[“]

其中,“strkey”指出字符串的名字,它只能包含字母和數(shù)字;“some string”為字符串的內(nèi)容。

原文出處:http://blog.csdn.net/hanxin1987216/archive/2011/03/24/6273466.aspx

總結(jié)

以上是生活随笔為你收集整理的设备驱动程序INF文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。