Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dyrektywa AddProperty odwołuje się do co najmniej jednej sekcji pliku INF, które modyfikują właściwości urządzenia ustawione dla wystąpienia urządzenia, kontenera urządzenia, klasy konfiguracji urządzenia, klasy interfejsu urządzenia lub interfejsu urządzenia.
[DDInstall] |
[DDInstall.nt] |
[DDInstall.ntx86] |
[DDInstall.ntia64] |
[DDInstall.ntamd64] |
[DDInstall.ntarm] |
[DDInstall.ntarm64]
[ClassInstall32] |
[ClassInstall32.nt] |
[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)
[interface-install-section] |
[interface-install-section.nt] |
[interface-install-section.ntx86] |
[interface-install-section.ntia64] | (Windows XP and later versions of Windows)
[interface-install-section.ntamd64] | (Windows XP and later versions of Windows) |
[interface-install-section.ntarm] | (Windows 8 and later versions of Windows) |
[interface-install-section.ntarm64] | (Windows 10 version 1709 and later versions of Windows)
[add-interface-section]
AddProperty=add-property-section[,add-property-section]... (Windows Vista and later versions of Windows)
...
Każda sekcja add-property-może zawierać wpisy, aby wykonać następujące czynności:
Dodaj właściwość urządzenia i zainicjuj wartość właściwości.
Zmodyfikuj wartość istniejącej właściwości urządzenia.
Sekcja add-property-section, do którego odwołuje się dyrektywa AddProperty, ma następujący format:
[add-property-section]
(property-name, , , [flags], value) |
({property-category-guid}, property-pid, type, [flags], value)
...
Sekcja dodawania właściwości może zawierać dowolną liczbę wpisów nazwy właściwości lub wpisów identyfikatora GUID właściwości , z których każda znajduje się w osobnym wierszu.
Wpisy
nazwa-właściwości
Jedną z następujących nazw właściwości reprezentujących właściwości pakietu sterownika wystąpienia urządzenia:
DeviceModel
DeviceVendorWebsite
DeviceDetailedDescription
DeviceDocumentationLink
DeviceIcon
DeviceBrandingIcon
Aby uzyskać więcej informacji na temat dodawania niestandardowych ikon urządzeń, zobacz Zapewnianie ikon dla urządzenia.
Jedną z następujących nazw właściwości reprezentujących właściwości pakietu sterowników kontenera urządzenia.
ContainerModelName
ContainerManufacturer
KontenerCategories
ContainerIcon
Aby uzyskać więcej informacji na temat określania informacji opisujących urządzenie fizyczne, zobacz Driver Package Container Metadata (Metadane kontenera pakietów sterowników)
property-category-guid
Wartość identyfikatora GUID identyfikującą kategorię właściwości. Wartość identyfikatora GUID może być identyfikatorem GUID zdefiniowanym przez system, który identyfikuje jedną z kategorii właściwości dla wystąpienia urządzenia, klasy konfiguracji urządzenia, klasy interfejsu urządzenia lub interfejsu urządzenia. Wszystkie właściwości, które mają tę samą wartość identyfikatora GUID, są elementami członkowskimi tej samej kategorii. Te kategorie właściwości są definiowane w pliku Devpkey.h.
Wartość identyfikatora GUID może być również niestandardową wartością identyfikatora GUID, która identyfikuje kategorię właściwości niestandardowych.
właściwość pid
Identyfikator właściwości wskazujący konkretną właściwość w kategorii właściwości wskazywanej przez wartość property-category-guid . Ze względów systemu wewnętrznego identyfikator właściwości musi być większy lub równy dwóm.
typ
Wartość liczbowa w formacie dziesiętnym lub szesnastkowym identyfikatora właściwości-data-type dla właściwości określonej przez wartość property-category-guid i wartość właściwości pid . Obsługiwane są tylko następujące podstawowe typy danych :
DEVPROP_TYPE_STRING
DEVPROP_TYP_LISTA_STRINGÓW
DEVPROP_TYPE_BINARY
DEVPROP_TYPE_BOOLEAN
DEVPROP_TYPE_UINT32
Na przykład wartość dziesiętna typu danych DEVPROP_TYPE_STRING wynosi 18 (0x00000012), a wartość dziesiętna typu danych DEVPROP_TYPE_STRING_LIST wynosi 8210 (0x00002012).
flagi
Opcjonalna wartość szesnastkowa, która jest bitową or następujących flag, które kontrolują operację dodawania:
0x00000001 (FLG_ADDPROPERTY_NOCLOBBER)
Flaga uniemożliwiająca zamianę istniejącej wartości wartości na wartość wpisu. Jeśli składnik zapisywania sterowników chce, aby właściwość mogła zostać zastąpiona za pomocą dyrektyw Include i Needs , składnik zapisywania musi określić tę flagę dla tej właściwości. Dzieje się tak dlatego, że system Windows przetwarza sekcje INF, do których odwołuje się dyrektywy Include and Needs, po tym jak system Windows przetwarza wszystkie inne dyrektywy w sekcji INF, które zawierały dyrektywy Dołączanie i potrzeby.
0x00000002 (FLG_ADDPROPERTY_OVERWRITEONLY)
Flaga, która ustawia wartość właściwości na wartość wpisu wartości tylko wtedy, gdy określona właściwość już istnieje.
0x00000004 (FLG_ADDPROPERTY_APPEND)
Flaga, która dołącza wartość wpisu wartości do istniejącej wartości ciągu właściwości. Ta flaga jest prawidłowa tylko wtedy, gdy typ danych właściwości jest DEVPROP_TYPE_STRING_LIST. Podany ciąg nie jest dołączany do istniejącej wartości ciągu właściwości, jeśli podany ciąg jest już obecny w istniejącej wartości ciągu.
0x00000008 (FLG_ADDPROPERTY_OR)
Flaga wykonywana bitowo LUB wartości wpisu wartości do istniejącej wartości właściwości. Ta flaga jest prawidłowa tylko wtedy, gdy typ danych właściwości jest DEVPROP_TYPE_UINT32.
0x00000010 (FLG_ADDPROPERTY_AND)
Flaga wykonująca bitową wartość AND wartości wpisu wartości do istniejącej wartości właściwości. Ta flaga jest prawidłowa tylko wtedy, gdy typ danych właściwości jest DEVPROP_TYPE_UINT32.
W przypadku właściwości kontenera urządzenia wymienionych w nazwie właściwości flagi nie są potrzebne i będą ignorowane podczas analizowania.
wartość
Wartość używana przez operację dodawania do modyfikowania wartości właściwości w zależności od typu danych właściwości i wartości wpisu flag.
W przypadku niektórych właściwości kontenera urządzenia wymienionych w nazwie właściwości wartość może być tokenem %strkey%, co umożliwia stosowanie ciągów specyficznych dla ustawień regionalnych. W poniższej tabeli opisano, jakie wartości można określić dla tych właściwości. Aby uzyskać więcej informacji na temat ciągów specyficznych dla ustawień regionalnych, zobacz sekcję Ciągi INF.
| Nazwa właściwości | Wartość | Lokalizowalne za pomocą sekcji [Strings.LanguageID] dla tokenu %strkey% |
|---|---|---|
| ContainerModelName | Ciąg lub token %strkey% | Tak |
| ContainerManufacturer | Ciąg lub token %strkey% | Tak |
| KontenerCategories | Lista ciągów rozdzielonych przecinkami z kategorii DeviceCategory | Nie. |
| ContainerIcon | Ciąg lub %strkey% token reprezentujący ścieżkę do pliku ikony dołączonego do pakietu sterowników | Tak |
Uwagi
Dyrektywę AddProperty można użyć do modyfikowania właściwości urządzenia zdefiniowanego przez system lub niestandardowej właściwości urządzenia. Tę dyrektywę można określić w dowolnej sekcji przedstawionej w powyższej instrukcji składni formalnej.
Każda nazwa sekcji add-property-section musi być unikatowa w pliku INF, ale sekcja może odwoływać się do więcej niż jednej dyrektywy AddProperty w tym samym pliku INF. Każda nazwa sekcji musi być zgodna z ogólnymi regułami definiowania nazw sekcji opisanych w ogólnych regułach składni dla plików INF.
Aby uzyskać więcej informacji na temat sposobu używania dyrektywy INF AddProperty , zobacz Using the INF AddProperty Directive and the INF DelProperty Directive (Korzystanie z dyrektywy INF AddProperty) i INF DelProperty Dyrektywy.
Przykłady
Poniższy przykład sekcji dodawania właściwości zawiera dwa wpisy wiersza: pierwszy wpis wiersza ustawia właściwość DeviceModel według nazwy, a drugi wiersz ustawia niestandardową właściwość urządzenia, określając identyfikator GUID klucza właściwości niestandardowej.
Pierwszy wiersz zawiera wartość wpisu nazwa-właściwości "DeviceModel" i wartość wpisu wartości "Przykładowa nazwa modelu urządzenia".
Drugi wpis wiersza ustawia właściwość niestandardową w kategorii właściwości niestandardowej. Wartość wpisu property-category-guid to "c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e" i wartość wpisu identyfikatora właściwości to "2". Opcjonalna wartość wpisu flag nie jest obecna, a wartość wpisu typu to "18" (DEVPROP_TYPE_STRING). Wartość wpisu wartości to "Wartość ciągu dla właściwości 1".
[SampleAddPropertySection]
DeviceModel,,,,"Sample Device Model Name"
{c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e}, 2, 18,, "String value for property 1"