Condividi tramite


File INF per Plug-Ins PSHED

Un plug-in PSHED viene installato da un file INF (Information). I file INF per plug-in PSHED contengono le sezioni di file INF standard seguenti:

Sezione versione INF

Sezione INF SourceDisksNames

Sezione INF SourceDisksFiles

Sezione INF DestinationDirs

Sezione produttore INF

Sezione Modelli INF

Sezione INF DDInstall

INF DDInstall. Sezione Servizi

Sezione Stringhe INF

Nella sezione Modelli INF il fornitore della piattaforma può usare qualsiasi identificatore hardware (ID) per il plug-in PSHED. L'ID hardware viene specificato usando la voce hw-id nella sezione Modelli e può essere un ID hardware nello spazio dei nomi ACPI o in un altro spazio dei nomi del dispositivo. Il fornitore può anche specificare un ID compatibile con un valore PNP0C33. Questo ID compatibile viene usato per definire un dispositivo di errore hardware compatibile con Microsoft. Il fornitore specifica l'ID compatibile usando la voce id compatibile nella sezione Modelli .

Un file INF PSHED deve includere anche una direttiva AddReg che fa riferimento a una sezione del file che aggiunge una voce alla\\ chiavePSHED Control PSHEDControl\ PSHED \ del Registro di sistema. Questa voce informa il PSHED che il plug-in PSHED è installato nel sistema. Ciò consente al PSHED di verificare che tutti i plug-in PSHED installati vengano caricati correttamente ogni volta che il sistema viene avviato.

Ad esempio:

;
; Example PSHED plug-in INF file
;

[Version]
Signature = "$Windows NT$"
Class = System ; Specify appropriate Class
ClassGuid = {4d36e97d-e325-11ce-bfc1-08002be10318} ; Specify appropriate ClassGuid
Provider = %Msft%
CatalogFile = "ExamplePSHEDPlugin.cat"
DriverVer = 01/01/06,1.0
PnpLockdown = 1

[SourceDiskNames]
1 = %DiskName%

[SourceDiskFiles]
%FileName% = 1

[DestinationDirs]
ExamplePSHEDPlugin.DriverFiles = 13

[Manufacturer]
%Msft% = Microsoft,NTamd64

[Microsoft.NTamd64]
%DeviceDesc% = ExamplePSHEDPluginInstall,%DeviceId%

[ExamplePSHEDPluginInstall]
OptionDesc = %Description%
CopyFiles = ExamplePSHEDPlugin.DriverFiles
AddReg = ExamaplePSHEDPlugin.AddReg

[ExamplePSHEDPluginInstall.Services]
AddService = %ServiceName%,,ExamplePSHEDPlugin.Service

[ExamplePSHEDPlugin.DriverFiles]
%FileName%,,,0x00000040 ; COPYFLG_OVERWRITE_OLDER_ONLY

[ExamplePSHEDPlugin.AddReg]
HKLM,%PSHEDControlPath%,%ServiceName%,0x00000000,%FileName%

[ExamplePSHEDPlugin.Service]
DisplayName = %ServiceName%
Description = %ServiceDesc%
ServiceType = 1  ; SERVICE_KERNEL_DRIVER
StartType = 3    ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %13%\%FileName%

[Strings]
%Msft% = "Microsoft Corporation"
%DiskName% = "Example PSHED Plug-In Installation Disk"
%FileName% = "ExamplePSHEDPlugin.sys"
%DeviceDesc% = "Example PSHED Plug-In Device"
%DeviceId% = "ACPI\PSHEDPI"
%Description% = "Example PSHED Plug-In"
%ServiceName% = "ExamplePSHEDPlugin"
%ServiceDesc% = "Example PSHED Plug-In"
%PSHEDControlPath% = "System\CurrentControlSet\Control\PSHED\Plugins"