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 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Existence
此参数是隐含的,是可选的。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ForceWildcardHandling
此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Hive
指定存在项的注册表配置单元。 使用 KeyName 参数指定密钥名称。
类型: | RegistryRootKey |
别名: | RegistryHive |
接受的值: | ClassesRoot, CurrentConfig, CurrentUser, LocalMachine, Users |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Is64Bit
添加此参数以指示此注册表项与 64 位系统上的 32 位应用程序相关联。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-KeyName
指定必须存在的注册表项的名称,以指示此应用程序的存在。 使用 Hive 参数指定应存在此键的注册表配置单元。
类型: | String |
别名: | RegistryKey |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
输入
None
输出
System.Object