New-CMDetectionClauseRegistryKeyValue
Crie uma cláusula de método de detecção para um valor de chave do Registro.
Syntax
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 criar uma cláusula em um método de detecção em um aplicativo. Esta cláusula é uma regra para um valor de chave do Registro indicar a presença de um aplicativo.
Para detectar a existência de uma chave do Registro em vez de um valor, use o cmdlet New-CMDetectionClauseRegistryKey.
Depois de usar esse cmdlet, use um dos cmdlets Add- or Set- para tipos de implantação. Passe esse objeto de cláusula de detecção para os parâmetros AddDetectionClause ou RemoveDetectionClause.
Para agrupar cláusulas de detecção, use o parâmetro GroupDetectionClauses nos cmdlets de tipo de implantação.
Observação
Execute cmdlets do Configuration Manager na unidade de site do Configuration Manager, por PS XYZ:\>
exemplo. Para obter mais informações, consulte getting started.
Exemplos
Exemplo 1: Detectar a existência de um valor do Registro
Este exemplo cria uma cláusula para detectar a existência do Git para Windows valor de versão atual.
$regClause = New-CMDetectionClauseRegistryKeyValue -Hive LocalMachine -KeyName "SOFTWARE\GitForWindows" -PropertyType String -ValueName "CurrentVersion" -Existence
Set-CMMsiDeploymentType -ApplicationName "Git for Windows" -DeploymentTypeName "Install" -AddDetectionClause $regClause
Exemplo 2: Comparar um valor de versão no Registro
Este exemplo cria uma cláusula para comparar a versão do Microsoft 365 no Registro para ser maior ou igual a 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 caracteres curinga como valores literais de caracteres. Não é possível combiná-lo com ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Existence
Quando você adiciona esse parâmetro, o valor da chave do Registro deve existir no sistema de destino para indicar a presença desse aplicativo.
Em vez de apenas existir, para avaliar uma regra para os dados desse valor de chave do Registro, use o parâmetro Value.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExpectedValue
Ao adicionar o parâmetro Value, use ExpectedValue com PropertyType e ExpressionOperator. Quando você usa esses parâmetros, o valor da chave do Registro deve atender à regra para indicar a presença desse aplicativo. Este parâmetro ExpectedValue especifica o valor a ser comparado ao valor da chave do Registro.
O valor a ser comparado depende do PropertyType especificado.
Type: | String[] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExpressionOperator
Ao adicionar o parâmetro Value, use ExpressionOperator com PropertyType e ExpectedValue. Quando você usa esses parâmetros, o valor da chave do Registro deve atender à regra para indicar a presença desse aplicativo. Este parâmetro ExpressionOperator especifica o operador para comparar o valor da chave do Registro com o valor esperado.
A partir da versão 2010, o tipo de parâmetro foi alterado de RuleExpressionOperator para RegistryValueRuleExpressionOperator.
Type: | RegistryValueRuleExpressionOperator |
Accepted values: | IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf, BeginsWith, NotBeginsWith, EndsWith, NotEndsWith, Contains, NotContains |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
Esse parâmetro processa caracteres curinga e pode levar a um comportamento inesperado (não recomendado). Não é possível combiná-lo com DisableWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Hive
Especifique o hive do Registro onde a chave existe. Use o parâmetro KeyName para especificar o nome da chave. Use o parâmetro ValueName para especificar o valor da chave do Registro.
Por exemplo, o seguinte comando do PowerShell se traduz nos seguintes 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 |
Type: | RegistryRootKey |
Aliases: | RegistryHive |
Accepted values: | ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, Users |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Is64Bit
Adicione esse parâmetro para indicar que essa chave do Registro está associada a um aplicativo de 32 bits em sistemas de 64 bits.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KeyName
Especifique o nome da chave do Registro que deve existir para indicar a presença deste aplicativo. Use o parâmetro Hive para especificar o hive do Registro onde essa chave deve existir. Use o parâmetro ValueName para especificar o valor da chave do Registro.
Por exemplo, o seguinte comando do PowerShell se traduz nos seguintes 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 |
Type: | String |
Aliases: | RegistryKey |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PropertyType
Ao adicionar o parâmetro Value, use PropertyType com ExpressionOperator e ExpectedValue. Quando você usa esses parâmetros, o valor da chave do Registro deve atender à regra para indicar a presença desse aplicativo. Este parâmetro PropertyType especifica o tipo de dados do valor da chave do Registro.
Por exemplo, você definir esse parâmetro como Version
, definir ExpressionOperator como IsEquals
e ExpectedValue como 1.48.1.0
. Em seguida, a regra verifica o valor da chave do Registro especificado para ter a mesma versão.
Type: | SettingDataType |
Accepted values: | Version, Integer, String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Quando você adiciona o parâmetro Value, o valor da chave do Registro deve atender à regra para indicar a presença desse aplicativo. Use este parâmetro com os seguintes parâmetros: ExpectedValue, ExpressionOperatore PropertyType.
Em vez de avaliar uma regra, para apenas verificar se o valor da chave do Registro existe, use o parâmetro Existence.
Type: | SwitchParameter |
Aliases: | ValueRule |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ValueName
Especifique o valor da chave do Registro que indica a presença do aplicativo. Use o parâmetro Hive para especificar o hive do Registro e KeyName para especificar a chave do Registro.
Por exemplo, o seguinte comando do PowerShell se traduz nos seguintes 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 |
Type: | String |
Aliases: | RegistryValueName |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Entradas
Nenhum
Saídas
System.Object