Directiva UpdateInis de INF

Precaución

A partir de Windows 11 versión 22H2, un paquete de controladores que usa esta directiva ya no es apto para una firma del Centro para desarrolladores de hardware.

Los paquetes de controladores universales y los controladores de Windows no pueden usar esta directiva.

Una directiva UpdateInis hace referencia a una o varias secciones con nombre, especificando un archivo INI desde el que se va a leer y aplicar una sección o línea determinada a un archivo INI existente con el mismo nombre en el equipo de destino. Opcionalmente, las modificaciones de línea a línea de y a dichos archivos INI se pueden especificar en la sección 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]...

Esta directiva casi nunca se especifica en archivos INF para la instalación en Windows, debido a la falta de necesidad de archivos INI. Sin embargo, la directiva UpdateInis es válida en cualquiera de las secciones que se muestran en la instrucción de sintaxis formal, así como en las secciones definidas por inf-writer a las que hace referencia una directiva AddInterface o se hace referencia en una sección InterfaceInstall32 .

Cada sección con nombre a la que hace referencia una directiva UpdateInis tiene la siguiente forma:

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

Una sección update-ini puede tener cualquier número determinado por INF-writer de entradas, cada una en una línea independiente.

Entradas

ini-file
Especifica el nombre de un archivo INI proporcionado en el medio de origen y, implícitamente, el del archivo INI que se va a actualizar en el equipo de destino. Este valor se puede expresar como un nombre de archivo o como un token %strkey% definido en una sección Cadenas del archivo INF.

ini-section
Especifica el nombre de la sección dentro del archivo INI especificado. Si se especifican los dos valores siguientes, esta sección contiene una entrada que se va a cambiar. Si se omite una entrada antigua pero se proporciona una entrada new-ini , la nueva entrada se agregará a medida que se lea esta sección.

old-ini-entry
Este valor opcional especifica el nombre de una entrada en la sección ini especificada, normalmente expresada en la forma siguiente:

"key=value"

Tanto la clave como el valor se pueden expresar como tokens %strkey% definidos en una sección Cadenas del archivo INF. El asterisco (*) se puede especificar como un carácter comodín para la clave o el valor.

new-ini-entry
Este valor opcional especifica un cambio en una entrada anterior determinada o en la adición de una nueva entrada. Este valor se puede expresar de la misma manera que old-ini-entry.

flags
Este valor opcional controla la interpretación de la entrada antigua y/o new-ini-entry especificada. La entrada flags puede ser uno de los siguientes valores numéricos :

Valor Significado
0 Este es el valor predeterminado de la entrada flags si se omite.

Si la clave anterior de entrada ini está presente en los archivos INI, reemplace esa clave=valor por la nueva entrada new-ini especificada. Solo las claves de los archivos INI deben coincidir. Se omite el valor correspondiente de cada clave.

Para agregar una entrada new-ini al archivo INI de destino incondicionalmente, omita el valor old-ini-entry de la entrada de la sección update-ini de inf.

Para eliminar una entrada anterior del archivo INI de destino incondicionalmente, omita el valor new-ini-entry .
1 Si la entrada anterior anterior (key=value) existe en los archivos INI, reemplácela en el archivo INI de destino que tiene la nueva entrada ini especificada. Tanto la clave como el valor de la entrada antigua especificada deben coincidir con las de los archivos INI para que se realice este reemplazo, no solo sus claves como para el valor de las marcas anteriores.
2 Si no se encuentra la clave especificada para old-ini-entry en el archivo INI de destino, no haga nada. De lo contrario, los cambios realizados dependen de las coincidencias encontradas en los archivos INI para las claves dadas de old-ini-entry y new-ini-entry, como se indica a continuación:

(1) Si la clave de la entrada ini antigua existe en los archivos INI, pero así lo hace la clave de la entrada new-ini, reemplace old-ini-entry por la new-ini-entry en el archivo INI de destino y, a continuación, quite la entrada new-ini-entry superflua de ese archivo INI.

(2) Si la clave de la entrada old-ini existe en los archivos INI, pero la clave de la entrada new-ini no, reemplace la clave old-ini-entrypor la de new-ini-entry en el archivo INI de destino, pero deje el valor de la entrada old-ini-entry sin cambios.
3 Si no se encuentra la clave y el valor especificados para old-ini-entry en los archivos INI, no haga nada. De lo contrario, los cambios realizados dependen de las coincidencias encontradas en los archivos INI para las claves y valores especificados de old-ini-entry y new-ini-entry, como se indica a continuación:

(1) Si el valor key=value de la entrada old-ini existe en los archivos INI, pero así lo hace el valor key=value de new-ini-entry, reemplace old-ini-entry por new-ini-entry en el archivo INI de destino y, a continuación, quite la nueva entrada new-ini-entry superflua de ese archivo INI.

(2) Si el valor key=value de la entrada old-ini existe en los archivos INI, pero la entrada new-ini no lo hace, reemplace old-ini-entry por la new-ini-entry en el archivo INI de destino, pero deje el valor de old-ini-entry sin modificar.

Comentarios

Un nombre de update-ini-section determinado debe ser único dentro del archivo INF y debe seguir las reglas generales para definir los nombres de sección. Para obtener más información sobre estas reglas, vea Reglas de sintaxis general para archivos INF.

INF proporciona la ruta de acceso completa del archivo ini especificado en el medio de distribución de una de las siguientes maneras:

  • En los archivos INF proporcionados por IHV/OEM, mediante las secciones SourceDisksNames y SourceDisksFiles de este INF para especificar explícitamente la ruta de acceso completa de cada archivo de origen con nombre que no está en el directorio raíz (o directorios) en el medio de distribución.

  • En los archivos INF proporcionados por el sistema, proporcionando uno o varios archivos INF adicionales, identificados en la entrada LayoutFile de la sección Versión del archivo INF.

Cualquier nombre de archivo especificado dentro de una entrada ini antigua o new-ini-entry debe designar el directorio de destino que contiene ese archivo. Esta ruta de acceso de directorio de destino de un nombre de archivo en una entrada update-ini-section debe especificarse como dirid. Para obtener listas de posibles valores dirid , vea Using Dirids.

Consulte también

AddInterface

ClassInstall32

DDInstall

DestinationDirs

Ini2Reg

InterfaceInstall32

ProfileItems

SourceDisksFiles

SourceDisksNames

Cadenas

UpdateIniFields

Versión