New-CMDetectionClauseRegistryKey
为注册表项创建检测方法子句。
语法
New-CMDetectionClauseRegistryKey
[-Existence]
-Hive <RegistryRootKey>
[-Is64Bit]
-KeyName <String>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[<CommonParameters>]
说明
使用此 cmdlet 在应用程序的检测方法中创建子句。 此子句是一个注册表项的规则,用于指示是否存在应用程序。
若要检测注册表值而不是注册表项,请使用 New-CMDetectionClauseRegistryKeyValue cmdlet。
使用此 cmdlet 后,对部署类型使用其中一个 Add- 或 Set- cmdlet。 将此检测子句对象传递给 AddDetectionClause 或 RemoveDetectionClause 参数。
若要对检测子句进行分组,请对部署类型 cmdlet 使用 GroupDetectionClauses 参数。
备注
从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>
。 有关详细信息,请参阅 入门。
示例
示例 1:为 MSI 应用部署类型创建多个子句
此示例创建两个文件子句和一个注册表子句,然后使用它们向应用添加 MSI 部署类型。
$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"}
参数
-DisableWildcardHandling
此参数将通配符视为文字字符值。 不能将其与 ForceWildcardHandling 结合使用。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Existence
此参数为隐含参数,可选。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
此参数处理通配符,并且可能会导致意外行为 (不建议) 。 不能将其与 DisableWildcardHandling 结合使用。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Hive
指定存在注册表项的注册表配置单元。 使用 KeyName 参数指定密钥名称。
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
添加此参数以指示此注册表项与 64 位系统上的 32 位应用程序相关联。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KeyName
指定必须存在的注册表项的名称,以指示此应用程序是否存在。 使用 Hive 参数指定应存在此注册表项的注册表配置单元。
Type: | String |
Aliases: | RegistryKey |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
输入
无
输出
System.Object