Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Директива AddProperty ссылается на один или несколько разделов INF-файла, которые изменяют свойства устройства, заданные для экземпляра устройства, контейнера устройства, класса установки устройства, класса интерфейса устройства или интерфейса устройства.
[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)
...
Каждый раздел add-property-section может содержать записи для выполнения следующих действий:
Добавьте свойство устройства и инициализирует значение свойства.
Измените значение существующего свойства устройства.
Раздел add-property-section , на который ссылается директива AddProperty , имеет следующий формат:
[add-property-section]
(property-name, , , [flags], value) |
({property-category-guid}, property-pid, type, [flags], value)
...
Раздел свойства add может содержать любое количество записей имени свойства или записей guid свойства, каждое из которых находится в отдельной строке.
Операции
property-name
Одно из следующих имен свойств, представляющих свойства пакета драйвера экземпляра устройства:
DeviceModel
DeviceVendorWebsite
DeviceDetailedDescription
DeviceDocumentationLink
DeviceIcon
DeviceBrandingIcon
Дополнительные сведения о добавлении настраиваемых значков устройств см. в разделе "Предоставление значков для устройства".
Одно из следующих имен свойств, представляющих свойства пакета драйвера контейнера устройств.
ContainerModelName
ContainerManufacturer
Категории контейнеров
ContainerIcon
Дополнительные сведения об указании сведений, описывающих физическое устройство, см. в разделе метаданные контейнера пакета драйверов
property-category-guid
Значение GUID, определяющее категорию свойств. Значение GUID может быть системным ИДЕНТИФИКАТОРом GUID, определяющим одну из категорий свойств для экземпляра устройства, класса установки устройства, класса интерфейса устройства или интерфейса устройства. Все свойства с одинаковым значением GUID являются членами одной категории. Эти категории свойств определены в Devpkey.h.
Значение GUID также может быть пользовательским значением GUID, которое определяет пользовательскую категорию свойств.
property-pid
Идентификатор свойства, указывающий конкретное свойство в категории свойств, указанное значением property-category-guid . По внутренним системным причинам идентификатор свойства должен быть больше или равен двум.
тип
Числовое значение в десятичном или шестнадцатеричном формате идентификатора типа свойств для свойства, указанного значением property-category-guid и значением свойства pid . Поддерживаются только следующие базовые типы данных :
DEVPROP_TYPE_STRING
DEVPROP_TYPE_STRING_LIST
DEVPROP_TYPE_BINARY
DEVPROP_TYPE_BOOLEAN
DEVPROP_TYPE_UINT32
Например, десятичное значение типа данных DEVPROP_TYPE_STRING равно 18 (0x00000012), а десятичное значение типа данных DEVPROP_TYPE_STRING_LIST равно 8210 (0x00002012).
флаги
Необязательное шестнадцатеричное значение, которое является битовой или из следующих флагов, которые управляют операцией добавления:
0x00000001 (FLG_ADDPROPERTY_NOCLOBBER)
Флаг, который предотвращает замену существующего значения значения значения. Если модуль записи драйверов хочет создать свойство, которое может быть переопределено с помощью директив Include и Needs , модуль записи должен указать этот флаг для этого свойства. Это связано с тем, что Windows обрабатывает разделы INF, на которые ссылается директивы Include and Needs после обработки всех других директив в разделе INF, включающих директивы Include и Needs .
0x00000002 (FLG_ADDPROPERTY_OVERWRITEONLY)
Флаг, который задает значение свойства значением входа только в том случае, если указанное свойство уже существует.
0x00000004 (FLG_ADDPROPERTY_APPEND)
Флаг, добавляющий значение записи к значению существующего строкового значения свойства. Этот флаг действителен, только если тип данных свойства DEVPROP_TYPE_STRING_LIST. Указанная строка не добавляется к существующему строковой строке свойства, если указанная строка уже присутствует в существующем строковом значении.
0x00000008 (FLG_ADDPROPERTY_OR)
Флаг, выполняющий битовую или значение записи значения в значение существующего значения свойства. Этот флаг действителен, только если тип данных свойства DEVPROP_TYPE_UINT32.
0x00000010 (FLG_ADDPROPERTY_AND)
Флаг, который выполняет побитовое значение и значения входа значения в значение существующего значения свойства. Этот флаг действителен, только если тип данных свойства DEVPROP_TYPE_UINT32.
Для свойств контейнера устройства, перечисленных в имени свойства, флаги не нужны и будут игнорироваться во время синтаксического анализа.
значение
Значение, используемое операцией добавления для изменения значения свойства в зависимости от типа данных свойства и значения записи флагов .
Для некоторых свойств контейнера устройства, перечисленных в имени свойства, значение может быть маркером %strkey%, что позволяет использовать строки для языкового стандарта. В следующей таблице описаны значения, которые можно указать для этих свойств. Дополнительные сведения о строках, относящихся к языковому стандарту, см. в разделе INF Strings.
Название свойства | Ценность | Локализация с помощью разделов [Strings.LanguageID] для маркера %strkey% |
---|---|---|
ContainerModelName | Строка или маркер %strkey% | Да |
ContainerManufacturer | Строка или маркер %strkey% | Да |
Категории контейнеров | Список строк, разделенных запятыми, из DeviceCategory | нет |
ContainerIcon | Строка или маркер %strkey%, представляющий путь к файлу значка, который входит в пакет драйвера. | Да |
Замечания
Директива AddProperty может использоваться для изменения системного свойства устройства или пользовательского свойства устройства. Эта директива может быть указана в любом из разделов, показанных в приведенном выше формальном операторе синтаксиса.
Каждое имя раздела надстройки должно быть уникальным в INF-файле, но на раздел можно ссылаться несколькими директивами AddProperty в одном и том же INF-файле. Каждое имя раздела должно соответствовать общим правилам определения имен разделов, описанных в общих правилах синтаксиса для INF-файлов.
Дополнительные сведения об использовании директивы INF AddProperty см. в директиве INF AddProperty и директиве INF DelProperty.
Примеры
В следующем примере раздела свойств добавления содержатся две строки: первая строка задает свойство DeviceModel по имени, а вторая строка задает настраиваемое свойство устройства, указав GUID ключа пользовательского свойства свойства свойства.
Первая строка содержит значение записи "DeviceModel" со значением имени свойства и значением входа "Sample Device Model Name".
Вторая строка задает настраиваемое свойство в категории настраиваемых свойств. Значение записи property-category-guid равно "c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e" и значение записи идентификатора свойства равно "2". Необязательные значения записи флагов отсутствуют, а значение записи типа — "18" (DEVPROP_TYPE_STRING). Значение записи значения — "Строковое значение для свойства 1".
[SampleAddPropertySection]
DeviceModel,,,,"Sample Device Model Name"
{c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e}, 2, 18,, "String value for property 1"