Compartir a través de


Directiva AddPowerSetting inf

Una directiva AddPowerSetting hace referencia a una o varias secciones que se usan para modificar o crear información de configuración de energía. Cada sección add-power-setting define una configuración de energía, los valores permitidos para la configuración de energía, el nombre descriptivo de la configuración de energía y la descripción de la configuración de energía. Una sección add-power-setting-section también especifica el valor predeterminado para cada personalidad del esquema de energía. Para obtener más información sobre la configuración de energía y las personalidades del esquema de energía, consulte Administración de estados de rendimiento de dispositivos.

[DDInstall] | 
[DDInstall.HW] | 
[DDInstall.CoInstallers] | 
[ClassInstall32] | 
[ClassInstall32.ntx86] | 
[ClassInstall32.ntia64] |  (Windows Vista)
[ClassInstall32.ntamd64] | (Windows Vista)
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows)
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows)

AddPowerSetting=add-power-setting-section[,add-power-setting-section]

En general, una sección add-power-setting-section incluye las siguientes directivas:

  • Una directiva De subgrupo .

  • Una directiva Setting

  • Una lista de dos o más directivas Value o una directiva ValueRange .

  • Un conjunto de seis directivas Default .

Una sección add-power-setting-section toma una de las dos formas posibles siguientes:

  • Si los valores de configuración de energía permitidos se pueden definir mejor como un conjunto de dos o más valores discretos, use una lista de directivas Value para especificar los valores permitidos, como se indica a continuación:

    [add-power-setting-section]
    
    [SubGroup = {subgroup-guid}] | SubGroup = {subgroup-guid}, subgroup-name, subgroup-description, subgroup-icon
    Setting = {setting-guid}, [setting-name],[setting-description],[setting-icon]
    Value = value-index, value-name,[value-description], value-flags, value-data 
    Value = value-index, value-name,[value-description], value-flags, value-data
    [Value = value-index, value-name,[value-description], value-flags, value-data
    ...
    Value = value-index, value-name,[value-description], value-flags, value-data]
    
    (Six required Default directives, each one of which has the following form)
    Default = power-scheme-personality-GUID, AC/DC-index, default-setting-index | default-setting-value 
    ...
    
  • Si los valores de configuración de energía permitidos se pueden definir mejor como una secuencia incrementada de valores enteros no negativo dentro de un intervalo especificado, use una directiva ValueRange para especificar los valores permitidos, como se indica a continuación:

    [add-power-setting-section]
    
    [SubGroup = {subgroup-guid}] | 
    SubGroup = {subgroup-guid}, subgroup-name, subgroup-description, subgroup-icon
    Setting = {setting-guid}, [setting-name],[setting-description],[setting-icon]
    ValueRange = range-minimum-value, range-maximum-value, range-increment, [range-unit-label] 
    
    (Six required Default directives, each one of which has the following form)
    Default = power-scheme-personality-GUID, AC/DC-index, default-setting-index | default-setting-value 
    ...
    

Entradas

Nota

Excepto para una entrada de datos de valor , todas las siguientes entradas que proporcionan un valor de cadena pueden especificar la cadena de una de las maneras que se describen en Especificar un valor de entrada de cadena AddPowerSetting.

Subgrupo
Un subgrupo agrupa la configuración de energía que está relacionada lógicamente.

Para especificar un subgrupo definido por el sistema, incluya una directiva De subgrupo y proporcione solo la entrada guid del subgrupo . Los subgrupos definidos por el sistema se representan mediante las constantes GUID_Xxx_SUBGROUP y NO_SUBGROUP_GUID, que se definen en Wdm.h.

Por ejemplo, GUID_VIDEO_SUBGROUP representa el subgrupo que contiene la configuración de energía de vídeo para una personalidad de esquema de energía. La constante NO_SUBGROUP_GUID representa una colección de valores que no pertenecen lógicamente a ningún subgrupo. Si no se incluye una directiva de subgrupo , la configuración se agrega de forma predeterminada a la colección de configuraciones que no pertenecen lógicamente a ningún subgrupo.

Para definir un nuevo subgrupo, incluya la directiva SubGroup y proporcione las siguientes entradas necesarias: subgrupo-guid, nombre de subgrupo, descripción de subgrupo e icono de subgrupo. El GUID del nuevo subgrupo debe ser único y las demás entradas deben ser lo más descriptivas posible.

subgrupo-guid
La entrada necesaria proporciona el GUID que identifica el subgrupo. El formato de esta entrada es {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}, donde "X" es un dígito hexadecimal.

Por ejemplo, el valor de la constante definida por el sistema GUID_VIDEO_SUBGROUP es {7516B95F-F776-4464-8C53-06167F40CC99}. Este GUID representa el subgrupo que contiene la configuración de energía de vídeo para una personalidad de esquema de energía.

nombre de subgrupo
Cadena que especifica el nombre del subgrupo de la configuración de energía. Si el subgrupo es un subgrupo definido por el sistema, no se debe proporcionar esta entrada. Si el subgrupo es nuevo, se requiere esta entrada.

subgrupo-description
Cadena que describe al usuario el subgrupo de energía. Si el subgrupo es un subgrupo definido por el sistema, no se debe proporcionar esta entrada. Si el subgrupo es nuevo, se requiere esta entrada.

icono de subgrupo
Referencia a un recurso de icono. Si el subgrupo es un subgrupo definido por el sistema, no se debe proporcionar esta entrada. Si el subgrupo es nuevo, se requiere esta entrada.

Un recurso de icono debe especificarse como un valor del Registro independiente del lenguaje. Para obtener información sobre cómo especificar un valor del Registro independiente del idioma, vea Especificar un valor de entrada de cadena AddPowerSetting.

Configuración
La directiva Setting identifica la configuración a la que se aplican todas las demás entradas de la sección. Se requiere una directiva Setting en una sección add-power-setting y solo puede haber una directiva Setting en una sección add-power-setting. Si un archivo INF define más de una configuración, cada configuración debe definirse en su propia sección add-power-setting.

A continuación se muestran las entradas asociadas a una directiva Setting .

setting-guid
Entrada necesaria que especifica el GUID que representa la configuración de energía. El formato de esta entrada es {XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}, donde cada "X" es un dígito hexadecimal.

Por ejemplo, lo siguiente es un valor GUID personalizado: {BFC0D9E9-549C-483D-AD2A-3D90C98A8B03}.

setting-name
Entrada opcional que especifica una cadena que contiene el nombre descriptivo de la configuración de energía. Opciones de energía en Panel de control muestra este nombre descriptivo para un usuario.

setting-description
Entrada opcional que especifica una cadena que describe al usuario la configuración de energía y el efecto que la configuración tiene sobre la potencia y el rendimiento del sistema.

setting-icon
Entrada opcional que es una referencia a un recurso de icono. Un recurso de icono debe especificarse mediante un valor del Registro independiente del lenguaje.

Para obtener información sobre cómo especificar un valor de registro independiente del idioma, vea Especificar un valor de entrada de cadena AddPowerSetting.

Valor
Una directiva Value define un valor permitido para una configuración de energía. La directiva Value debe usarse si los valores se pueden definir mejor como un conjunto de dos o más valores, donde cada valor puede tener un tipo de datos personalizado específico del valor. En esta situación, una sección add-power-setting-section debe incluir dos o más directivas Value . Un usuario puede seleccionar uno de estos valores en Power Options en Panel de control para configurar un esquema de energía.

Si los valores de configuración de energía permitidos se pueden describir mejor como un conjunto incrementado de enteros no negativos dentro de un intervalo, use la directiva ValueRange en lugar de la directiva Value para especificar los valores de configuración de energía permitidos.

value-index
Entrada necesaria que especifica un valor de índice único, que es mayor o igual que cero, y que se usa para hacer referencia al valor de configuración correspondiente. Opciones de energía en Panel de control muestra los valores de configuración de energía para un usuario en orden de sus valores de índice correspondientes, de menor a mayor.

value-name
Entrada necesaria que proporciona una cadena que proporciona el nombre descriptivo para el valor de configuración correspondiente. Opciones de energía en Panel de control muestra los nombres descriptivos de los valores de configuración de energía para un usuario.

value-description
Entrada opcional que proporciona una cadena que describe al usuario el valor de configuración de energía y el efecto que el valor de configuración tiene en la potencia y el rendimiento del sistema.

marcas de valor
Entrada necesaria que especifica el tipo de datos de la entrada de datos de valor correspondiente, como se indica en la tabla siguiente.

Valor de marca Tipo de datos
0x00000001 REG_BINARY
0x00010001 REG_DWORD
0x00000000 REG_SZ

value-data
Entrada necesaria que proporciona los datos para el valor de configuración correspondiente, cuyo formato depende del tipo de datos especificado por la entrada correspondiente de marcas de valor , como se indica a continuación:

  • Un valor de REG_BINARY se puede especificar en formato hexadecimal mediante la notación 0x o como una lista separada por comas de números hexadecimales emparejados sin la notación 0x.

    Por ejemplo, las siguientes entradas son equivalentes: 0xFEDCBA9876543210 y la siguiente lista separada por comas de dígitos hexadecimales emparejados: FE, DC, BA, 98, 76, 54, 32, 10.

  • Se puede especificar un valor de REG_DWORD en formato hexadecimal (mediante notación 0x) o en formato decimal.

  • Un valor de REG_SZ solo se puede expresar como una cadena entre comillas dobles ("cadena entre comillas") o como un token %strkey% definido en la sección Cadenas INF de un archivo INF.

Nota

No debe usar valores de cadena porque no se pueden localizar. En su lugar, use valores de tipo REG_BINARY o REG_DWORD.

ValueRange
Use la directiva ValueRange si los valores de configuración de energía permitidos se pueden definir mejor como una secuencia incrementada de valores enteros no negativos dentro de un intervalo especificado. El administrador de energía valida que una configuración que un usuario selecciona en Opciones de Energía en Panel de control es uno de estos valores permitidos. El conjunto de valores permitidos viene determinado por un valor mínimo permitido, un valor máximo permitido y un incremento entre los valores permitidos dentro del intervalo. Se permite un valor si satisface lo siguiente:

range-minimum-value + k*range-increment

donde range-minimum-value es mayor o igual que cero, k y range-increment son mayores o iguales que uno, y el valor es menor o igual que el valor máximo del intervalo. Además, el valor máximo de intervalo debe ser igual al intervalo-valor + mínimo-k*range-incrementpara algunos k.

Por ejemplo, para un valor mínimo de intervalo igual a 0, un valor máximo de intervalo igual a 10 y un incremento de intervalo igual a 2, los valores permitidos son los siguientes: 0, 2, 4, 6, 8 y 10.

Si los valores de configuración de energía permitidos se pueden describir mejor como una lista de valores, donde cada valor puede tener un tipo de datos personalizado específico del valor, use la directiva Value en lugar de la directiva ValueRange .

range-minimum-value
Valor de tipo REG_DWORD que especifica la configuración mínima de energía permitida.

range-maximum-value
Valor de tipo REG_DWORD que especifica el valor máximo permitido de configuración de energía. El valor máximo debe ser mayor o igual que el valor mínimo y debe ser igual a range-minimum-value + k*range-increment, para algunos enteros k que es mayor que cero.

incremento de intervalo
Valor de tipo REG_DWORD mayor que cero. Este valor especifica la diferencia entre los valores consecutivos dentro del intervalo inclusivo especificado por range-minimum-value y range-maximum-value.

range-unit-label
Cadena opcional que describe el valor de configuración de energía. La cadena, junto con el nombre de configuración, informa al usuario de qué tipo de datos escribir.

Por ejemplo, la cadena se puede usar para especificar las unidades de valor, como "minutos" o "%" (que representa el porcentaje).

Valor predeterminado
Hay seis directivas predeterminadas que deben incluirse en una sección AddPowerSetting . Una directiva Default especifica el valor predeterminado para una de las tres personalidades de esquema de energía definidas por el sistema que se aplican a un estado de alimentación de CA y a las tres personalidades de esquema de energía definidas por el sistema que se aplican a un estado de alimentación dc.

Es muy importante que los valores predeterminados sean válidos y precisos. Si el usuario no establece manualmente una configuración de energía, el administrador de energía usa el valor predeterminado especificado por la directiva Default .

power-scheme-personality-GUID
Uno de los siguientes GUID, que identifica el esquema de energía al que se aplica el valor predeterminado.

Personalidad GUID
Economizadora {A1841308-3541-4FAB-BC81-F71556F20B4A}
Alto rendimiento {8C5E7FDA-E8BF-4A96-9A85-A6E23A8C635C}
Equilibrada {381B4222-F694-41F0-9685-FF5BB260DF2E}

Estos GUID se definen en Wdm.h.

AC/DC-index
Si el índice AC/DC-index es 0, la configuración se aplica a un estado de alimentación de CA y si AC/DC-index es 1, la configuración se aplica a un estado de alimentación de DC. Un valor distinto de 0 o 1 no es válido.

default-setting-index
Si la directiva Value se usa para especificar valores permitidos, default-setting-index es el valor de la entrada value-index de la directiva Value . Si se usa la directiva ValueRange para especificar valores permitidos, esta entrada no se aplica.

default-setting-value
Si la directiva ValueRange se usa para especificar valores permitidos, default-setting-value es uno de los valores permitidos especificados por la directiva ValueRange . Si la directiva Value se usa para especificar valores permitidos, esta entrada no se aplica.

Comentarios

Un nombre de add-power-setting-section debe ser único en un archivo INF, pero se puede hacer referencia a él mediante más de una directiva AddPowerSetting en el mismo archivo INF. Cada nombre de sección debe seguir las reglas generales que se describen en Reglas de sintaxis general para archivos INF.

El administrador de energía no quita automáticamente las directivas de energía del dispositivo después de desinstalar un dispositivo. Un coinstalador puede realizar la instalación o eliminación de la configuración de energía, los valores y los valores predeterminados a través de las rutinas de configuración de energía proporcionadas por el sistema que se definen en Powrprof.h. Para obtener más información sobre estas rutinas de administración de energía, consulte la referencia de administración de energía que se proporciona con la documentación de Microsoft Windows SDK.

Además, la herramienta de línea de comandosPowercfg.exese puede usar para cambiar la configuración de energía. Para obtener información sobre Powercfg.exe, vea el Centro de ayuda y soporte técnico de Microsoft.

Para obtener más información sobre cómo usar las extensiones .nt, .ntx86, .ntia64, .ntamd64, .ntarm y .ntarm64 definidas por el sistema, vea Crear archivos INF para varias plataformas y sistemas operativos.

Especificar un valor de entrada de cadena AddPowerSetting

Excepto para las entradas de datos de valor de tipo REG_SZ, todos los demás valores de entrada de cadena que se proporcionan con una directiva AddPowerSetting se pueden expresar como una cadena entre comillas dobles ("cadena entre comillas"), como un token %strkey% que se define en la sección de cadena INF de un archivo INF, o como valor del Registro independiente del idioma.

Los valores del Registro neutros de idioma se usan para admitir la interfaz de usuario multilingüe (MUI) de Windows y se especifican de la siguiente manera:

"@file-path,-resourceID[;comment]"

Las entradas que especifican un valor del Registro independiente del idioma son las siguientes:

file-path
Ruta de acceso completa del archivo que contiene el recurso.

resourceID
Identificador de recurso del recurso correspondiente. En el caso de una cadena, el resourceID hace referencia a una cadena. En el caso de un icono, el resourceID hace referencia a un icono.

Comment
Valor opcional que se puede usar para ayudar a depurar o para proporcionar un comentario adicional sobre la configuración. En el caso de un recurso de cadena, el administrador de energía no combina ni muestra la cadena de comentario con la cadena de recurso especificada.

Para obtener más información sobre cómo especificar valores de registro neutros en el lenguaje, vea Rendering Shell and Registry Strings(Shell de representación) y Registry Strings (Cadenas del Registro).

Ejemplos

Los dos ejemplos siguientes definen la configuración de energía que controla el brillo de una PANTALLA LCD. En el primer ejemplo se muestra cómo usar la directiva Value para definir un valor mínimo, medio y máximo de brillo LCD.

// Within a DDinstall or ClassInstall23 section
AddPowerSetting=LCDDim
...

[LCDDim]
SubGroup = {7516B95F-F776-4464-8C53-06167F40CC99}
Setting = {381B4222-F694-41F0-9685-FF5BB260DF2E}, "LCD Brightness", "Controls the brightness of the LCD display"

Value = 0, "Low", "Minimum Brightness", %FLG_ADDREG_TYPE_DWORD%, 0x50
Value = 1, "Medium", "Medium Brightness", %FLG_ADDREG_TYPE_DWORD%, 0x75
Value = 2, "High", "Maximum Brightness", %FLG_ADDREG_TYPE_DWORD%, 0x100

Default = %GUID_MAX_POWER_SAVINGS%, %AC%, 0
Default = %GUID_MAX_POWER_SAVINGS%, %DC%, 0
Default = %GUID_TYPICAL_POWER_SAVINGS%, %AC%, 2
Default = %GUID_TYPICAL_POWER_SAVINGS%, %DC%, 1
Default = %GUID_MIN_POWER_SAVINGS%, %AC%, 2
Default = %GUID_MIN_POWER_SAVINGS%, %DC%, 2
...

[Strings]
GUID_MAX_POWER_SAVINGS = {a1841308-3541-4fab-bc81-f71556f20b4a}
GUID_TYPICAL_POWER_SAVINGS = {381b4222-f694-41f0-9685-ff5bb260df2e}
GUID_MIN_POWER_SAVINGS = {8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c}
AC = 0
DC = 1
FLG_ADDREG_TYPE_DWORD = 0x00010001

En el segundo ejemplo se muestra cómo usar la directiva ValueRange para definir un intervalo de valores de brillo LCD permitidos que varían del 0 % al 100 %, con un incremento del 1 % entre los valores permitidos.

// Within a DDinstall or a ClassInstall23 section
AddPowerSetting=LCDDimRange
...

[LCDDimRange]
SubGroup = {7516B95F-F776-4464-8C53-06167F40CC99}
Setting = {381B4222-F694-41F0-9685-FF5BB260DF2E}, "LCD Brightness", "Controls the brightness of the LCD display"
ValueRange = 0, 100, 1, "%"
Default = %GUID_MAX_POWER_SAVINGS%, %AC%, 50
Default = %GUID_MAX_POWER_SAVINGS%, %DC%, 50
Default = %GUID_TYPICAL_POWER_SAVINGS%, %AC%, 95
Default = %GUID_TYPICAL_POWER_SAVINGS%, %DC%, 50
Default = %GUID_MIN_POWER_SAVINGS%, %AC%, 100
Default = %GUID_MIN_POWER_SAVINGS%, %DC%, 100

[Strings]
GUID_MAX_POWER_SAVINGS = {a1841308-3541-4fab-bc81-f71556f20b4a}
GUID_TYPICAL_POWER_SAVINGS = {381b4222-f694-41f0-9685-ff5bb260df2e}
GUID_MIN_POWER_SAVINGS = {8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c}
AC = 0
DC = 1

Consulte también

ClassInstall32

DDInstall

DDInstall. CoInstallers

DDInstall. HW

DDInstall. Interfaces

DDInstall. Servicios