Partilhar via


Diretiva INF UpdateInis

Cuidado

A partir do Windows 11 versão 22H2, um pacote de driver que usa essa diretiva não está mais qualificado para uma assinatura da Central do Desenvolvedor para Hardware.

Os pacotes de driver Universais e os Drivers do Windows não podem usar essa diretiva.

Uma diretiva de UpdateInis faz referência a uma ou mais seções nomeadas, especificando um arquivo INI do qual uma seção ou linha específica deve ser lida e aplicada a um arquivo INI existente com o mesmo nome no computador de destino. Como opção, as modificações linha por linha de e para esses arquivos INI podem ser especificadas na update-ini-section.

[DDInstall] | 
[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)

UpdateInis=update-ini-section[,update-ini-section]...

Essa diretiva quase nunca é especificada em arquivos INF para instalação no Windows, devido à falta de necessidade de arquivos INI. No entanto, a diretiva de UpdateInis é válida em qualquer uma das seções mostradas na instrução de sintaxe formal, bem como em seções definidas pelo gravador INF referenciadas por uma diretiva AddInterface ou referenciada em uma seção InterfaceInstall32.

Cada seção nomeada referenciada por uma diretiva UpdateInis tem o seguinte formato:

[update-ini-section]
 
ini-file,ini-section[,old-ini-entry][,new-ini-entry][,flags]
...

Uma update-ini-section pode ter qualquer número de entradas INF-writer-determined, cada uma em uma linha separada.

Entradas

ini-file
Especifica o nome de um arquivo INI fornecido na mídia de origem e, implicitamente, o de um arquivo INI a ser atualizado no computador de destino. Esse valor pode ser expresso como um nome de arquivo ou como um token %strkey% definido em uma seção Strings do arquivo INF.

ini-section
Especifica o nome da seção dentro no arquivo INI fornecido. Se forem especificados os próximos dois valores, esta seção conterá uma entrada a ser alterada. Se uma old-ini-entry for omitida, mas uma new-ini-entry for fornecida, a nova entrada deve ser adicionada à medida que esta seção for lida.

old-ini-entry
Esse valor opcional especifica o nome de uma entrada na ini-section fornecida, geralmente expressa da seguinte forma:

"key=value"

Um ou ambos os valores de chave e valor podem ser expressos como %strkey% tokens definidos em um seção Strings do arquivo INF. O asterisco (*) pode ser especificado como um curinga para a chave ou o valor.

new-ini-entry
Esse valor opcional especifica uma alteração em uma determinada old-ini-entry ou a inclusão de uma nova entrada. Esse valor pode ser expresso da mesma maneira que old-ini-entry.

sinalizadores
Esse valor opcional controla a interpretação da old-ini-entry e/ou a new-ini-entry fornecida. A entrada de sinalizadores pode ser um dos seguintes valores numéricos:

Valor Significado
0 Esse é o valor padrão para a entrada de sinalizadores se ela for omitida.

Se a chave old-ini-entry estiver presente nos arquivos INI, substitua essa key=value pela new-ini-entry fornecida. Somente as chaves nos arquivos INI devem ser correspondentes. O valor correspondente de cada uma dessas chaves é ignorado.

Para adicionar uma new-ini-entry ao arquivo INI de destino incondicionalmente, omita o valor old-ini-entry da entrada na seção update-ini do INF.

Para excluir uma old-ini-entry antiga do arquivo INI de destino, omita o valor da new-ini-entry.
1 Se a old-ini-entry fornecida (key=value) existir nos arquivos INI, substitua-a no arquivo INI de destino que possui a new-ini-entry fornecida. Tanto a chave como o valor da old-ini-entry especificados devem corresponder aos dos arquivos INI para que essa substituição seja feita, não apenas suas chaves como para o valor dos sinalizadores anteriores.
2 Se a chave que foi especificada para old-ini-entry não puder ser encontrada no arquivo INI de destino, não faça nada. Caso contrário, as alterações feitas dependem das correspondências encontradas nos arquivos INI das chaves fornecidas de old-ini-entry e new-ini-entry, da seguinte maneira:

(1) Se a chave da old-ini-entry existir nos arquivos INI, mas também a chave da new-ini-entry, substitua a old-ini-entry pela new-ini-entry no arquivo INI de destino e, em seguida, remova a new-ini-entry supérflua desse arquivo INI.

(2) Se a chave da old-ini-entry existir nos arquivos INI, mas a chave da new-ini-entry não, substitua a chave old-ini-entry por aquela da new-ini-entry no arquivo INI de destino, mas deixe o valor da old-ini-entry inalterado.
3 Se a chave e o valor especificado pela old-ini-entry não puderem ser encontrados nos arquivos INI, não faça nada. Caso contrário, as alterações feitas dependem das correspondências encontradas nos arquivos INI das chaves e valores fornecidos de old-ini-entry e new-ini-entry, da seguinte maneira:

(1) Se key=value da old-ini-entry existir nos arquivos INI, mas também na key=value da new-ini-entry, substitua a old-ini-entry pela new-ini-entry no arquivo INI de destino e, em seguida, remova a new-ini-entry supérflua desse arquivo INI.

(2) Se key=value da old-ini-entry existir nos arquivos INI, mas new-ini-entry não, substitua a old-ini-entry pela new-ini-entry no arquivo INI de destino, mas deixe o valor da old-ini-entry inalterado.

Comentários

Uma update-ini-section fornecida deve ser exclusiva dentro do arquivo INF e deve seguir as regras gerais para definir os nomes de seção. Para mais informações sobre essas regras, consulte Regras gerais de sintaxe para arquivos INF.

O INF fornece o caminho completo do ini-file na mídia de distribuição de uma das seguintes maneiras:

  • Em arquivos INF fornecidos por IHV/OEM, usando as seções SourceDisksNames e SourceDisksFiles desse INF para especificar explicitamente o caminho completo de cada arquivo de origem nomeado que não está no diretório raiz (ou diretórios) na mídia de distribuição.

  • Em arquivos INF fornecidos pelo sistema, fornecendo um ou mais arquivos INF adicionais, identificados na entrada LayoutFile na seção Version do arquivo INF.

Qualquer nome de arquivo especificado em uma old-ini-entry ou new-ini-entry deve designar o diretório de destino que contém esse arquivo. Esse caminho de diretório de destino de um nome de arquivo em uma entrada update-ini-section deve ser especificado como um dirid. Para obter listas de possíveis valores de dirid , consulte Usar Dirids.

Confira também

AddInterface

ClassInstall32

DDInstall

DestinationDirs

Ini2Reg

InterfaceInstall32

ProfileItems

SourceDisksFiles

SourceDisksNames

Cadeias de caracteres

UpdateIniFields

Versão