Compartir a través de


New-CMDetectionClauseRegistryKeyValue

Cree una cláusula de método de detección para un valor de clave del Registro.

Sintaxis

New-CMDetectionClauseRegistryKeyValue
   -ExpressionOperator <RegistryValueRuleExpressionOperator>
   -Hive <RegistryRootKey>
   [-Is64Bit]
   -KeyName <String>
   -PropertyType <SettingDataType>
   -ValueName <String>
   -ExpectedValue <String[]>
   [-Value]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
New-CMDetectionClauseRegistryKeyValue
   -Hive <RegistryRootKey>
   [-Is64Bit]
   -KeyName <String>
   -PropertyType <SettingDataType>
   -ValueName <String>
   [-Existence]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

Description

Use este cmdlet para crear una cláusula en un método de detección en una aplicación. Esta cláusula es una regla para que un valor de clave del Registro indique la presencia de una aplicación.

Para detectar la existencia de una clave del Registro en lugar de un valor, use el cmdlet New-CMDetectionClauseRegistryKey .

Después de usar este cmdlet, use uno de los cmdlets Add- o Set- para los tipos de implementación. Pase este objeto de cláusula de detección a los parámetros AddDetectionClause o RemoveDetectionClause .

Para agrupar cláusulas de detección, use el parámetro GroupDetectionClauses en los cmdlets de tipo de implementación.

Nota:

Ejecute cmdlets de Configuration Manager desde la unidad de sitio de Configuration Manager, por ejemplo PS XYZ:\>. Para obtener más información, consulte Introducción.

Ejemplos

Ejemplo 1: Detección de la existencia de un valor del Registro

En este ejemplo se crea una cláusula para detectar la existencia del valor de la versión actual de Git para Windows.

$regClause = New-CMDetectionClauseRegistryKeyValue -Hive LocalMachine -KeyName "SOFTWARE\GitForWindows" -PropertyType String -ValueName "CurrentVersion" -Existence

Set-CMMsiDeploymentType -ApplicationName "Git for Windows" -DeploymentTypeName "Install" -AddDetectionClause $regClause

Ejemplo 2: Comparación de un valor de versión en el Registro

En este ejemplo se crea una cláusula para comparar la versión de Microsoft 365 en el Registro para que sea mayor o igual que 16.0.10730.20304.

$clause = New-CMDetectionClauseRegistryKeyValue -Hive LocalMachine -KeyName 'Software\Microsoft\Office\ClickToRun\Configuration' -PropertyType Version -ValueName 'VersionToReport' -Value -ExpectedValue '16.0.10730.20304' -ExpressionOperator GreaterEquals

Set-CMMsiDeploymentType -ApplicationName "Microsoft 365" -DeploymentTypeName "Install" -AddDetectionClause $clause

Parámetros

-DisableWildcardHandling

Este parámetro trata los caracteres comodín como valores de caracteres literales. No se puede combinar con ForceWildcardHandling.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Existence

Al agregar este parámetro, el valor de clave del Registro debe existir en el sistema de destino para indicar la presencia de esta aplicación.

En lugar de solo existencia, para evaluar una regla para los datos de este valor de clave del Registro, use el parámetro Value .

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ExpectedValue

Cuando agregue el parámetro Value , use ExpectedValue con PropertyType y ExpressionOperator. Cuando se usan estos parámetros, el valor de clave del Registro debe cumplir la regla para indicar la presencia de esta aplicación. Este parámetro ExpectedValue especifica el valor que se va a comparar con el valor de clave del Registro.

El valor que se va a comparar depende del PropertyType especificado.

Tipo:String[]
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ExpressionOperator

Al agregar el parámetro Value , use ExpressionOperator con PropertyType y ExpectedValue. Cuando se usan estos parámetros, el valor de clave del Registro debe cumplir la regla para indicar la presencia de esta aplicación. Este parámetro ExpressionOperator especifica el operador para comparar el valor de clave del Registro con el valor esperado.

A partir de la versión 2010, el tipo de parámetro cambió de RuleExpressionOperator a RegistryValueRuleExpressionOperator.

Tipo:RegistryValueRuleExpressionOperator
Valores aceptados:IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf, BeginsWith, NotBeginsWith, EndsWith, NotEndsWith, Contains, NotContains
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ForceWildcardHandling

Este parámetro procesa caracteres comodín y puede provocar un comportamiento inesperado (no recomendado). No se puede combinar con DisableWildcardHandling.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Hive

Especifique el subárbol del Registro donde existe la clave. Use el parámetro KeyName para especificar el nombre de la clave. Use el parámetro ValueName para especificar el valor de clave del Registro.

Por ejemplo, el siguiente comando de PowerShell se traduce en los siguientes valores de parámetro:

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' | Select-Object CurrentVersion

Parámetro Valor
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
Tipo:RegistryRootKey
Alias:RegistryHive
Valores aceptados:ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, Users
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Is64Bit

Agregue este parámetro para indicar que esta clave del Registro está asociada a una aplicación de 32 bits en sistemas de 64 bits.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-KeyName

Especifique el nombre de la clave del Registro que debe existir para indicar la presencia de esta aplicación. Use el parámetro hive para especificar el subárbol del Registro donde debe existir esta clave. Use el parámetro ValueName para especificar el valor de clave del Registro.

Por ejemplo, el siguiente comando de PowerShell se traduce en los siguientes valores de parámetro:

Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | Select-Object CurrentVersion

Parámetro Valor
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
Tipo:String
Alias:RegistryKey
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-PropertyType

Al agregar el parámetro Value , use PropertyType con ExpressionOperator y ExpectedValue. Cuando se usan estos parámetros, el valor de clave del Registro debe cumplir la regla para indicar la presencia de esta aplicación. Este parámetro PropertyType especifica el tipo de datos del valor de clave del Registro.

Por ejemplo, establezca este parámetro en Version, establezca ExpressionOperatorIsEqualsen y ExpectedValue en 1.48.1.0. A continuación, la regla comprueba el valor de clave del Registro especificado para que tenga esa misma versión.

Tipo:SettingDataType
Valores aceptados:Version, Integer, String
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Value

Al agregar el parámetro Value , el valor de clave del Registro debe cumplir la regla para indicar la presencia de esta aplicación. Use este parámetro con los parámetros siguientes: ExpectedValue, ExpressionOperator y PropertyType.

En lugar de evaluar una regla, para comprobar que el valor de la clave del Registro existe, use el parámetro Existence .

Tipo:SwitchParameter
Alias:ValueRule
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ValueName

Especifique el valor de clave del Registro que indica la presencia de la aplicación. Use el parámetro Hive para especificar el subárbol del Registro y KeyName para especificar la clave del Registro.

Por ejemplo, el siguiente comando de PowerShell se traduce en los siguientes valores de parámetro:

Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" | Select-Object CurrentVersion

Parámetro Valor
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
Tipo:String
Alias:RegistryValueName
Posición:Named
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

None

Salidas

System.Object