New-CMDetectionClauseFile
Erstellen Sie eine Erkennungsmethodenklausel für eine Datei.
Syntax
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>]
Beschreibung
Verwenden Sie dieses Cmdlet, um eine -Klausel in einer Erkennungsmethode für eine Anwendung zu erstellen. Diese Klausel ist eine Regel für eine Datei, die das Vorhandensein einer Anwendung angibt.
Verwenden Sie das Cmdlet New-CMDetectionClauseDirectory , um einen Ordner anstelle einer Datei zu erkennen.
Nachdem Sie dieses Cmdlet verwendet haben, verwenden Sie eines der Add- oder Set-Cmdlets für Bereitstellungstypen. Übergeben Sie dieses Erkennungsklauselobjekt entweder an die Parameter AddDetectionClause oder RemoveDetectionClause .
Verwenden Sie zum Gruppieren von Erkennungsklauseln den GroupDetectionClauses-Parameter für die Cmdlets des Bereitstellungstyps.
Hinweis
Führen Sie Configuration Manager-Cmdlets auf dem Configuration Manager-Standortlaufwerk aus, z. B PS XYZ:\>
. . Weitere Informationen finden Sie unter Erste Schritte.
Beispiele
Beispiel 1: Erkennen einer Anwendung nach Version
In diesem Beispiel wird die Anwendungapp.exe in einem bestimmten Ordner erkannt, in dem die Version größer oder gleich 1.0.0
ist.
$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
Beispiel 2: Erstellen mehrerer Klauseln für einen MSI-App-Bereitstellungstyp
In diesem Beispiel werden zwei Dateiklauseln und eine Registrierungsklausel erstellt und dann verwendet, um einer App einen MSI-Bereitstellungstyp hinzuzufügen.
$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"}
Parameter
-DisableWildcardHandling
Dieser Parameter behandelt Wildcardzeichen als Literalzeichenwerte. Sie können es nicht mit ForceWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Existence
Wenn Sie diesen Parameter hinzufügen, muss die Datei auf dem Zielsystem vorhanden sein, um anzuzeigen, dass diese Anwendung vorhanden ist.
Verwenden Sie den Value-Parameter , um eine Regel für Eigenschaften dieser Datei auszuwerten, anstatt nur zu existieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ExpectedValue
Wenn Sie den Value-Parameter hinzufügen, verwenden Sie ExpectedValue mit PropertyType und ExpressionOperator. Wenn Sie diese Parameter verwenden, muss die Datei die Regel erfüllen, um anzugeben, dass diese Anwendung vorhanden ist. Dieser ExpectedValue-Parameter gibt den Wert an, der mit dem Dateisystem verglichen werden soll.
Der zu vergleichende Wert hängt vom angegebenen PropertyType ab.
Typ: | String[] |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ExpressionOperator
Wenn Sie den Value-Parameter hinzufügen, verwenden Sie ExpressionOperator mit PropertyType und ExpectedValue. Wenn Sie diese Parameter verwenden, muss die Datei die Regel erfüllen, um anzugeben, dass diese Anwendung vorhanden ist. Dieser ExpressionOperator-Parameter gibt den Operator an, um den Dateisystemwert mit dem erwarteten Wert zu vergleichen.
Ab Version 2010 wurde der Parametertyp von RuleExpressionOperator in FileFolderRuleExpressionOperator geändert.
Typ: | FileFolderRuleExpressionOperator |
Zulässige Werte: | IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-FileName
Geben Sie den Namen der Datei an, die das Vorhandensein der Anwendung angibt. Verwenden Sie den Path-Parameter , um den Pfad zu dieser Datei anzugeben.
Beispielsweise wird die Configuration Manager-Konsole standardmäßig in C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe
installiert. Um eine Regel für diese Datei zu erstellen, legen Sie diesen Parameter auf Microsoft.ConfigurationManagement.exe
und den Path-Parameter auf fest %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin
.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ForceWildcardHandling
Dieser Parameter verarbeitet Wildcardzeichen und kann zu unerwartetem Verhalten führen (nicht empfohlen). Sie können es nicht mit DisableWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Is64Bit
Fügen Sie diesen Parameter hinzu, um anzugeben, dass diese Datei einer 32-Bit-Anwendung auf 64-Bit-Systemen zugeordnet ist.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Path
Geben Sie den Pfad im Dateisystem zu der Datei an, die das Vorhandensein der Anwendung angibt. Verwenden Sie den Parameter FileName , um den Namen der Datei anzugeben.
Beispielsweise wird die Configuration Manager-Konsole standardmäßig in C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\Microsoft.ConfigurationManagement.exe
installiert. Um eine Regel für diese Datei zu erstellen, legen Sie diesen Parameter auf %ProgramFiles(x86)%\Microsoft Endpoint Manager\AdminConsole\bin
und den FileName-Parameter auf fest Microsoft.ConfigurationManagement.exe
.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-PropertyType
Wenn Sie den Value-Parameter hinzufügen, verwenden Sie PropertyType mit ExpressionOperator und ExpectedValue. Wenn Sie diese Parameter verwenden, muss die Datei die Regel erfüllen, um anzugeben, dass diese Anwendung vorhanden ist. Dieser PropertyType-Parameter gibt die auszuwertende Dateieigenschaft an.
Sie legen diesen Parameter z. B. auf Version
, ExpressionOperator auf IsEquals
und ExpectedValue auf 1.48.1.0
fest. Die Regel überprüft dann, ob die angegebene Datei dieselbe Dateiversion aufweist.
Typ: | FileFolderProperty |
Zulässige Werte: | DateCreated, DateModified, Version, Size |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Value
Wenn Sie den Value-Parameter hinzufügen, muss die Datei die Regel erfüllen, um anzugeben, dass diese Anwendung vorhanden ist. Verwenden Sie diesen Parameter mit den folgenden Parametern: ExpectedValue, ExpressionOperator und PropertyType.
Anstatt eine Regel auszuwerten, um nur zu überprüfen, ob die Datei vorhanden ist, verwenden Sie den Parameter Existence .
Typ: | SwitchParameter |
Aliase: | ValueRule |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
None
Ausgaben
System.Object