New-CMDetectionClauseFile
Créez une clause de méthode de détection pour un fichier.
Syntaxe
New-CMDetectionClauseFile
-FileName <String>
-PropertyType <FileFolderProperty>
-ExpectedValue <String[]>
-ExpressionOperator <FileFolderRuleExpressionOperator>
[-Is64Bit]
-Path <String>
[-Value]
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
New-CMDetectionClauseFile
-FileName <String>
[-Is64Bit]
-Path <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 un fichier qui indique la présence d’une application.
Pour détecter un dossier au lieu d’un fichier, utilisez l’applet de commande New-CMDetectionClauseDirectory .
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 une application par version
Cet exemple détecte l’application app.exe dans un dossier spécifique où la version est supérieure ou égale à 1.0.0
.
$clause = New-CMDetectionClauseFile -Path "C:\Program Files\Application" -FileName App.exe -Value -PropertyType Version -ExpressionOperator GreaterEquals -ExpectedValue "1.0.0"
Set-CMScriptDeploymentType -ApplicationName "CentralApp" -DeploymentTypeName "Scripted install" -AddDetectionClause $clause
Exemple 2 : Créer plusieurs clauses pour un type de déploiement d’application MSI
Cet exemple crée deux clauses de fichier et une clause de Registre, puis les utilise pour ajouter un type de déploiement MSI à une application.
$cla1=New-CMDetectionClauseFile -FileName "filetest" -PropertyType Size -ExpectedValue 123 -ExpressionOperator IsEquals -Path "C:\" -Value -Is64Bit
$cla2=New-CMDetectionClauseFile -FileName "foldertest" -PropertyType DateCreated -ExpectedValue (Get-Date) -ExpressionOperator LessThan -Path "C:\" -Value
$cla3=New-CMDetectionClauseRegistryKey -Hive ClassesRoot -KeyName "aaa"
$logic1=$cla1.Setting.LogicalName
$logic2=$cla2.Setting.LogicalName
$logic3=$cla3.Setting.LogicalName
Add-CMMsiDeploymentType -AddDetectionClause $cla1,$cla2,$cla3 -ApplicationName "app" -DeploymentTypeName "dt" -InstallCommand "mycommand" -ContentLocation "\\server\sources\Orca.msi" -GroupDetectionClauses $logic1,$logic2 -DetectionClauseConnector {LogicalName=$logic2;Connector="or"},{LogicalName=$logic3;Connector="or"}
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, le fichier 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 propriétés de ce fichier, 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, le fichier doit satisfaire à la règle pour indiquer la présence de cette application. Ce paramètre ExpectedValue spécifie la valeur à comparer au système de fichiers.
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, le fichier 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 du système de fichiers à la valeur attendue.
À compter de la version 2010, le type de paramètre est passé de RuleExpressionOperator à FileFolderRuleExpressionOperator.
Type: | FileFolderRuleExpressionOperator |
Valeurs acceptées: | IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-FileName
Spécifiez le nom du fichier qui indique la présence de l’application. Utilisez le paramètre Path pour spécifier le chemin d’accès à ce fichier.
Par exemple, la console Configuration Manager s’installe par défaut sur C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe
. Pour créer une règle pour ce fichier, définissez ce paramètre sur Microsoft.ConfigurationManagement.exe
et le paramètre Path sur %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin
.
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 |
-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 |
-Is64Bit
Ajoutez ce paramètre pour indiquer que ce fichier est associé à 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 |
-Path
Spécifiez dans le système de fichiers le chemin d’accès au fichier qui indique la présence de l’application. Utilisez le paramètre FileName pour spécifier le nom du fichier.
Par exemple, la console Configuration Manager s’installe par défaut sur C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe
. Pour créer une règle pour ce fichier, définissez ce paramètre sur %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin
et le paramètre FileName sur Microsoft.ConfigurationManagement.exe
.
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 |
-PropertyType
Lorsque vous ajoutez le paramètre Value , utilisez PropertyType avec ExpressionOperator et ExpectedValue. Lorsque vous utilisez ces paramètres, le fichier doit satisfaire à la règle pour indiquer la présence de cette application. Ce paramètre PropertyType spécifie la propriété de fichier à évaluer.
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 le fichier spécifié a cette même version de fichier.
Type: | FileFolderProperty |
Valeurs acceptées: | DateCreated, DateModified, Version, Size |
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 , le fichier 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 le fichier 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 |
Entrées
None
Sorties
System.Object