INF BitReg-direktiv

Caution

Från och med Windows 11 version 22H2 är ett drivrutinspaket som använder det här direktivet inte längre berättigat till en signatur från Hardware Developer Center.

Universella drivrutinspaket och Windows Drivrutiner kan inte använda det här direktivet.

Ett BitReg-direktiv refererar till ett eller flera INF-skrivardefinierade avsnitt som används för att ange eller rensa bitar i en befintlig värdepost av REG_BINARY typ i registret. Det här direktivet används dock sällan i INF-filer för enhet/drivrutin.

[DDInstall] | 
[DDInstall.HW] | 
[DDInstall.CoInstallers] | 
[ClassInstall32] | 
[ClassInstall32.ntx86] | 
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows)
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows)
 
BitReg=bit-registry-section[,bit-registry-section]...

Ett BitReg-direktiv kan anges under något av de avsnitt som visas i den formella syntaxöversikten ovan. Det här direktivet kan också anges under något av följande INF-skrivardefinierade avsnitt:

Varje namngivet avsnitt som refereras till av ett BitReg-direktiv har följande formulär:

[bit-registry-section]
reg-root, [subkey], value-entry-name, [flags], byte-mask, byte-to-modify
reg-root, [subkey], value-entry-name, [flags], byte-mask, byte-to-modify
...

Ett bitregisteravsnitt kan ha valfritt antal poster, var och en på en separat rad.

Inlägg

reg-root
Identifierar roten i registerträdet för andra värden som anges i den här posten. Värdet kan vara något av följande:

HKCR
Förkortning för HKEY_CLASSES_ROOT.

HKCU (på engelska)
Förkortning för HKEY_CURRENT_USER.

HKLM (engelska)
Förkortning för HKEY_LOCAL_MACHINE.

HKU
Förkortning för HKEY_USERS.

HKR
Relativ rot – dvs. nycklar som anges med den här förkortningen är relativa till registernyckeln som är associerad med INF-avsnittet där det här BitReg-direktivet visas, enligt beskrivningen i följande tabell.

INF-avsnitt som innehåller BitReg-direktiv Registernyckel som refereras av HKR
Avsnittet INF DDInstall Enhetens programvarunyckel
INF DDInstall. HW-avsnitt Enhetens maskinvarunyckel
INF DDInstall. Avsnittet Tjänster Tjänstenyckeln

Note

HKR kan inte användas i ett bitregisteravsnitt som refereras från ett INF DefaultInstall-avsnitt .

Mer information om drivrutinsinformation som lagras under roten HKEY_LOCAL_MACHINE finns i Registerträd och nycklar för enheter och drivrutiner.

Undernyckel
Det här valfria värdet, uttryckt antingen som en %strkey -% token som definierats i avsnittet Strängar i INF eller som en registersökväg under den angivna reg-root (key1\key2\key3...), anger nyckeln som innehåller den värdepost som ska ändras.

value-entry-name
Anger namnet på en befintlig värdepost av REG_BINARY typ i den (befintliga) undernyckel som ska ändras. Det kan uttryckas antingen som "citerad sträng" eller som en %strkey -% token som definieras i AVSNITTET STRÄNGAR i INF.

flags
Det här valfria hexadecimala värdet, uttryckt som en ORed-bitmask av systemdefinierade låga ord- och höga ordflaggavärden, anger om du vill rensa eller ange de bitar som anges i den angivna bytemasken. Standardvärdet är noll, vilket rensar bitarna i 64-bitarsavsnittet i registret.

Bitmaskvärden för var och en av dessa flaggor är följande:

0x00000000 (FLG_BITREG_CLEARBITS)
Rensa de bitar som anges av bytemask.

0x00000001 (FLG_BITREG_SETBITS)
Ange de bitar som anges av bytemask.

0x00004000 (FLG_BITREG_32BITKEY) (Windows XP och senare versioner av Windows.)
Gör den angivna ändringen i 32-bitarsregistret. Om det inte anges görs ändringen i det interna registret.

bytemask
Den här masken i bytestorlek, uttryckt i hexadecimal notation, anger vilka bitar som ska rensas eller anges i det aktuella värdet för det angivna värdet-entry-name.

byte-to-modify
Det här bytestora värdet, uttryckt i decimaltal, anger det nollbaserade indexet för bytet inom värdet av REG_BINARY typ som ska ändras.

Remarks

Varje bitregisteravsnittsnamn måste vara unikt för INF-filen, men det kan refereras till av BitReg-direktiv i andra delar av samma INF. Varje INF-skrivskyddat avsnittsnamn måste vara unikt i INF-filen och måste följa de allmänna reglerna för att definiera avsnittsnamn. Mer information om dessa regler finns i Allmänna syntaxregler för INF-filer.

Värdet för en befintlig värdepost av REG_BINARY typ kan också ändras genom att skriva över dess aktuella värde i ett tilläggsregisteravsnitt någon annanstans i INF-filen. Mer information om avsnitt med tilläggsregister finns i referensen för AddReg-direktivet .

Om du använder ett BitReg-direktiv måste du definiera ett annat INF-filavsnitt. Värdet för en befintlig värdepost av REG_BINARY typ kan dock ändras bit för bit i ett sådant avsnitt, vilket bevarar värdena för alla återstående bitar.

Examples

I följande exempel visas ett bitregisteravsnitt för ett fiktivt program.

[AppX_BitReg]
; set first bit of byte 0 in ProgramData value entry
HKLM,Software\AppX,ProgramData,1,0x01,0 
; preceding would change value 30,00,10 to 31,00,10

; clear high bit of byte 2 in ProgramData value entry
HKLM,Software\AppX,ProgramData,,0x80,2
; preceding would change value 30,00,f0 to 30,00,70

; set second and third bits of byte 1 in ProgramData value entry
HKLM,Software\AppX,ProgramData,1,0x06,1
; preceding would change value 30,00,f0 to 30,06,f0

Se även

Lägg tillInterface

AddReg

AddService

ClassInstall32

DDInstall

DDInstall. CoInstallers

DDInstall. HW

InterfaceInstall32