Share via


New-CMDetectionClauseRegistryKeyValue

Créez une clause de méthode de détection pour une valeur de clé de Registre.

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

Utilisez cette cmdlet pour créer une clause dans une méthode de détection sur une application. Cette clause est une règle pour une valeur de clé de Registre qui indique la présence d’une application.

Pour détecter l’existence d’une clé de Registre au lieu d’une valeur, utilisez la cmdlet New-CMDetectionClauseRegistryKey.

Après avoir utilisé cette cmdlet, utilisez l’une des cmdlets Add- ou Set- pour les types de déploiement. Passez cet objet de clause de détection aux paramètres AddDetectionClause ou RemoveDetectionClause.

Pour grouper les clauses de détection, utilisez le paramètre GroupDetectionClauses sur les cmdlets de type de déploiement.

Notes

Exécutez les cmdlets Configuration Manager à partir du lecteur de site Configuration Manager, par PS XYZ:\> exemple. Pour plus d’informations, voir la mise en place.

Exemples

Exemple 1 : détecter l’existence d’une valeur de Registre

Cet exemple crée une clause pour détecter l’existence de Git pour Windows valeur de version actuelle.

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

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

Exemple 2 : comparer une valeur de version dans le Registre

Cet exemple crée une clause pour comparer la version de Microsoft 365 dans le Registre pour qu’elle soit supérieure ou égale à 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

Paramètres

-DisableWildcardHandling

Ce paramètre traite les caractères génériques comme des valeurs littérales. Vous ne pouvez pas la combiner avec ForceWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Existence

Lorsque vous ajoutez ce paramètre, la valeur de clé de Registre doit exister sur le système cible pour indiquer la présence de cette application.

Au lieu d’exister simplement, pour évaluer une règle pour les données de cette valeur de clé de Registre, utilisez le paramètre Value.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ExpectedValue

Lorsque vous ajoutez le paramètre Value, utilisez ExpectedValue avec PropertyType et ExpressionOperator. Lorsque vous utilisez ces paramètres, la valeur de clé de Registre doit satisfaire la règle pour indiquer la présence de cette application. Ce paramètre ExpectedValue spécifie la valeur à comparer à la valeur de clé de Registre.

La valeur à comparer dépend de la propriété PropertyType spécifiée.

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ExpressionOperator

Lorsque vous ajoutez le paramètre Value, utilisez ExpressionOperator avec PropertyType et ExpectedValue. Lorsque vous utilisez ces paramètres, la valeur de clé de Registre doit satisfaire la règle pour indiquer la présence de cette application. Ce paramètre ExpressionOperator spécifie l’opérateur pour comparer la valeur de clé de Registre à la valeur attendue.

À compter de la version 2010, le type de paramètre est modifié de RuleExpressionOperator à 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

Ce paramètre traite les caractères génériques et peut entraîner un comportement inattendu (non recommandé). Vous ne pouvez pas la combiner avec DisableWildcardHandling.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Hive

Spécifiez la ruche du Registre où se trouve la clé. Utilisez le paramètre KeyName pour spécifier le nom de la clé. Utilisez le paramètre ValueName pour spécifier la valeur de la clé de Registre.

Par exemple, la commande PowerShell suivante se traduit par les valeurs de paramètre suivantes :

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

Paramètre Valeur
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

Ajoutez ce paramètre pour indiquer que cette clé de Registre est associée à une application 32 bits sur des systèmes 64 bits.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-KeyName

Spécifiez le nom de la clé de Registre qui doit exister pour indiquer la présence de cette application. Utilisez le paramètre Hive pour spécifier la ruche du Registre où cette clé doit exister. Utilisez le paramètre ValueName pour spécifier la valeur de la clé de Registre.

Par exemple, la commande PowerShell suivante se traduit par les valeurs de paramètre suivantes :

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

Paramètre Valeur
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

Lorsque vous ajoutez le paramètre Value, utilisez PropertyType avec ExpressionOperator et ExpectedValue. Lorsque vous utilisez ces paramètres, la valeur de clé de Registre doit satisfaire la règle pour indiquer la présence de cette application. Ce paramètre PropertyType spécifie le type de données de la valeur de clé de Registre.

Par exemple, vous définissez ce paramètre sur Version , définissez ExpressionOperator sur IsEquals et ExpectedValue sur 1.48.1.0 . La règle vérifie ensuite si la valeur de clé de Registre spécifiée a la même version.

Type:SettingDataType
Accepted values:Version, Integer, String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-Value

Lorsque vous ajoutez le paramètre Value, la valeur de clé de Registre doit satisfaire la règle pour indiquer la présence de cette application. Utilisez ce paramètre avec les paramètres suivants : ExpectedValue, ExpressionOperatoret PropertyType.

Au lieu d’évaluer une règle, pour vérifier simplement que la valeur de clé de Registre existe, utilisez le paramètre Existence.

Type:SwitchParameter
Aliases:ValueRule
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

-ValueName

Spécifiez la valeur de clé de Registre qui indique la présence de l’application. Utilisez le paramètre Hive pour spécifier la ruche du Registre et KeyName pour spécifier la clé de Registre.

Par exemple, la commande PowerShell suivante se traduit par les valeurs de paramètre suivantes :

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

Paramètre Valeur
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

Entrées

Néant

Sorties

System.Object