New-CMDetectionClauseRegistryKeyValue
Créez une clause de méthode de détection pour une valeur de clé de Registre.
Syntaxe
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 applet de commande 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 pour indiquer la présence d’une application.
Pour détecter l’existence d’une clé de Registre au lieu d’une valeur, utilisez l’applet de commande New-CMDetectionClauseRegistryKey .
Après avoir utilisé cette applet de commande, utilisez l’une des applets de commande Add- ou Set- pour les types de déploiement. Transmettez cet objet de clause de détection aux paramètres AddDetectionClause ou RemoveDetectionClause .
Pour regrouper les clauses de détection, utilisez le paramètre GroupDetectionClauses sur les applets de commande de type de déploiement.
Remarque
Exécutez des applets de commande Configuration Manager à partir du lecteur de site Configuration Manager, par exemple PS XYZ:\>
. Pour plus d’informations, consultez Prise en main.
Exemples
Exemple 1 : Détecter l’existence d’une valeur de Registre
Cet exemple crée une clause pour détecter l’existence de la valeur de version actuelle de Git pour Windows.
$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 de caractère littéral. Vous ne pouvez pas la combiner avec ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 de simplement exister, 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 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ExpectedValue
Lorsque vous ajoutez le paramètre Value , utilisez ExpectedValue avec PropertyType et ExpressionOperator. Lorsque vous utilisez ces paramètres, la valeur de la 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 du PropertyType spécifié.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-ExpressionOperator
Lorsque vous ajoutez le paramètre Value , utilisez ExpressionOperator avec PropertyType et ExpectedValue. Lorsque vous utilisez ces paramètres, la valeur de la 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 passé de RuleExpressionOperator à RegistryValueRuleExpressionOperator.
Type: | RegistryValueRuleExpressionOperator |
Valeurs acceptées: | IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf, BeginsWith, NotBeginsWith, EndsWith, NotEndsWith, Contains, NotContains |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 |
Nom de clé | 'SOFTWARE\Microsoft\Windows NT\CurrentVersion' |
ValueName | CurrentVersion |
Type: | RegistryRootKey |
Alias: | RegistryHive |
Valeurs acceptées: | ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, Users |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 |
Nom de clé | 'SOFTWARE\Microsoft\Windows NT\CurrentVersion' |
ValueName | CurrentVersion |
Type: | String |
Alias: | RegistryKey |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-PropertyType
Lorsque vous ajoutez le paramètre Value , utilisez PropertyType avec ExpressionOperator et ExpectedValue. Lorsque vous utilisez ces paramètres, la valeur de la 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 que la valeur de clé de Registre spécifiée a la même version.
Type: | SettingDataType |
Valeurs acceptées: | Version, Integer, String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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, ExpressionOperator et 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 |
Alias: | ValueRule |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | 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 |
Nom de clé | 'SOFTWARE\Microsoft\Windows NT\CurrentVersion' |
ValueName | CurrentVersion |
Type: | String |
Alias: | RegistryValueName |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Sorties
System.Object