Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Uma diretiva AddProperty faz referência a uma ou mais seções de arquivo INF que modificam as propriedades do dispositivo definidas para uma instância de dispositivo, um contêiner de dispositivo, uma classe de instalação de dispositivo, uma classe de interface do dispositivo ou uma interface do dispositivo.
[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)
...
Cada seção de propriedade de adição pode ter entradas para fazer o seguinte:
Adicione uma propriedade de dispositivo e inicialize o valor da propriedade.
Modifique o valor de uma propriedade de dispositivo existente.
Uma seção add-property que é referenciada por uma diretiva AddProperty tem o seguinte formato:
[add-property-section]
(property-name, , , [flags], value) |
({property-category-guid}, property-pid, type, [flags], value)
...
Uma seção adicionar propriedade pode ter qualquer número de entradas de nome de propriedade ou entradas de guid de propriedade , cada uma em uma linha separada.
Entradas
property-name
Um dos seguintes nomes de propriedade que representam as propriedades do pacote de driver da instância do dispositivo:
DeviceModel
DeviceVendorWebsite
DeviceDetailedDescription
DeviceDocumentationLink
DeviceIcon
DeviceBrandingIcon
Para obter mais informações sobre como adicionar ícones de dispositivo personalizados, consulte Fornecendo ícones para um dispositivo.
Um dos nomes de propriedade a seguir que representam as propriedades do pacote do driver de contêiner do dispositivo.
ContainerModelName
ContainerManufacturer
ContainerCategories
ContainerIcon
Para obter mais informações sobre como especificar as informações que descrevem o dispositivo físico, consulte Metadados de contêiner do pacote de driver
property-category-guid
Um valor GUID que identifica a categoria de propriedade. O valor guid pode ser um GUID definido pelo sistema que identifica uma das categorias de propriedade de uma instância de dispositivo, uma classe de configuração de dispositivo, uma classe de interface de dispositivo ou uma interface do dispositivo. Todas as propriedades que têm o mesmo valor GUID são membros da mesma categoria. Essas categorias de propriedade são definidas em Devpkey.h.
O valor guid também pode ser um valor GUID personalizado que identifica uma categoria de propriedade personalizada.
property-pid
O identificador de propriedade que indica a propriedade específica dentro da categoria de propriedade que é indicada pelo valor de guid de categoria de propriedade . Por motivos internos do sistema, um identificador de propriedade deve ser maior ou igual a dois.
tipo
O valor numérico, no formato decimal ou hexadecimal, do identificador de tipo de dados de propriedade para a propriedade especificada pelo valor property-category-guid e pelo valor property-pid . Somente os seguintes tipos de dados base têm suporte:
DEVPROP_TYPE_STRING
DEVPROP_TYPE_STRING_LIST
DEVPROP_TYPE_BINARY
DEVPROP_TYPE_BOOLEAN
DEVPROP_TYPE_UINT32
Por exemplo, o valor decimal do tipo de dados DEVPROP_TYPE_STRING é 18 (0x00000012) e o valor decimal do tipo de dados DEVPROP_TYPE_STRING_LIST é 8210 (0x00002012).
sinalizadores
Um valor hexadecimal opcional que é um OR bit a bit dos seguintes sinalizadores que controlam a operação de adição:
0x00000001 (FLG_ADDPROPERTY_NOCLOBBER)
Um sinalizador que impede que o valor de entrada de valor substitua o valor da propriedade existente. Se um gravador de driver quiser tornar uma propriedade capaz de ser substituída por meio de diretivas Include and Needs , o gravador deverá especificar esse sinalizador para essa propriedade. Isso ocorre porque o Windows processa as seções INF que são referenciadas pelas diretivas Include and Needs depois que o Windows processa todas as outras diretivas na seção INF que incluíam as diretivas Incluir e Precisa .
0x00000002 (FLG_ADDPROPERTY_OVERWRITEONLY)
Um sinalizador que define o valor da propriedade como o valor de entrada de valor somente se a propriedade especificada já existir.
0x00000004 (FLG_ADDPROPERTY_APPEND)
Um sinalizador que acrescenta o valor de entrada de valor ao de um valor de cadeia de caracteres de propriedade existente. Esse sinalizador só será válido se o tipo de dados de propriedade for DEVPROP_TYPE_STRING_LIST. A cadeia de caracteres fornecida não será acrescentada a um valor de cadeia de caracteres de propriedade existente se a cadeia de caracteres fornecida já estiver presente no valor de cadeia de caracteres existente.
0x00000008 (FLG_ADDPROPERTY_OR)
Um sinalizador que executa um OR bit a bit do valor de entrada de valor para o valor da propriedade existente. Esse sinalizador só será válido se o tipo de dados de propriedade for DEVPROP_TYPE_UINT32.
0x00000010 (FLG_ADDPROPERTY_AND)
Um sinalizador que executa um AND bit a bit do valor de entrada de valor para o valor da propriedade existente. Esse sinalizador só será válido se o tipo de dados de propriedade for DEVPROP_TYPE_UINT32.
Para propriedades de contêiner de dispositivo listadas no nome da propriedade, os sinalizadores não são necessários e serão ignorados durante a análise.
o valor
O valor que a operação de adição usa para modificar um valor de propriedade, dependendo do tipo de dados de propriedade e do valor da entrada de sinalizadores .
Para algumas propriedades de contêiner de dispositivo listadas em nome da propriedade, o valor pode ser um token %strkey%, permitindo cadeias de caracteres específicas da localidade. A tabela a seguir descreve quais valores podem ser especificados para essas propriedades. Para obter mais informações sobre cadeias de caracteres específicas da localidade, consulte a Seção cadeias de caracteres INF.
| Nome da propriedade | Valor | Localizável por meio de seções [Strings.LanguageID] para %strkey% token |
|---|---|---|
| ContainerModelName | Um token de cadeia de caracteres ou %strkey% | Sim |
| ContainerManufacturer | Um token de cadeia de caracteres ou %strkey% | Sim |
| ContainerCategories | Uma lista de cadeias de caracteres, delimitadas por vírgula, de DeviceCategory | Não |
| ContainerIcon | Uma cadeia de caracteres ou token %strkey% que representa o caminho para o arquivo de ícone incluído no pacote de driver | Sim |
Observações
A diretiva AddProperty pode ser usada para modificar uma propriedade de dispositivo definida pelo sistema ou uma propriedade de dispositivo personalizada. Essa diretiva pode ser especificada em qualquer uma das seções mostradas na instrução de sintaxe formal acima.
Cada nome de seção de propriedade de adição deve ser exclusivo em um arquivo INF, mas a seção pode ser referenciada por mais de uma diretiva AddProperty no mesmo arquivo INF. Cada nome de seção deve seguir as regras gerais para definir nomes de seção descritos em Regras gerais de sintaxe para arquivos INF.
Para obter mais informações sobre como usar a diretiva InF AddProperty , consulte Usando a diretiva AddProperty inf e a diretiva INF DelProperty.
Exemplos
O exemplo a seguir de uma seção adicionar propriedade inclui duas entradas de linha: a entrada da primeira linha define a propriedade DeviceModel por nome e a entrada da segunda linha define uma propriedade de dispositivo personalizada especificando um GUID de chave de propriedade personalizada.
A primeira linha inclui o valor de entrada de nome de propriedade "DeviceModel" e o valor de entrada de valor "Nome do modelo de dispositivo de exemplo".
A entrada de segunda linha define uma propriedade personalizada em uma categoria de propriedade personalizada. O valor da entrada property-category-guid é "c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e" e o valor de entrada do identificador de propriedade é "2". O valor de entrada de sinalizadores opcionais não está presente e o valor de entrada de tipo é "18" (DEVPROP_TYPE_STRING). O valor de entrada de valor é "Valor de cadeia de caracteres para a propriedade 1".
[SampleAddPropertySection]
DeviceModel,,,,"Sample Device Model Name"
{c22189e4-8bf3-4e6d-8467-8dc6d95e2a7e}, 2, 18,, "String value for property 1"
Consulte também