New-CMTSStepConditionRegistry

为任务序列步骤创建 注册表设置 条件。

语法

New-CMTSStepConditionRegistry
   -RegistryKey <String>
   -RegistryOperator <VariableOperatorType>
   [-RegistryValueData <String>]
   [-RegistryValueName <String>]
   -RootKey <RegistryRootKeyType>
   [-ValueType <RegistryValueType>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

使用此 cmdlet 为任务序列步骤创建 注册表设置 条件对象。 然后,将 New-CMTSStep*Set-CMTSStep* cmdlet 之一与 ConditionAddCondition 参数结合使用 。 例如 ,Set-CMTSStepApplyDataImage

有关详细信息,请参阅 使用任务序列编辑器:条件

注意

从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1

此示例首先为检查 Configuration Manager 客户端日志级别的注册表设置创建 condition 对象。

然后,它使用 Set-CMTSStepSetDynamicVariable cmdlet 将此条件对象添加到默认 OS 部署任务序列的“设置动态变量”步骤。

$root = "HKeyLocalMachine"
$key = "SOFTWARE\Microsoft\CCM\Logging\@Global"
$name = "LogLevel"
$type = "RegistryDWord"
$value = 1

$condition = New-CMTSStepConditionRegistry -RootKey $root -RegistryKey $key -RegistryOperator Equals -RegistryValueName $name -ValueType $type -RegistryValueData $value

$tsNameOsd = "Default OS deployment"
$tsStepNameDynVar = "Set Dynamic Variables"

Set-CMTSStepSetDynamicVariable -TaskSequenceName $tsNameOsd -StepName $tsStepNameDynVar -AddCondition $condition

此示例脚本在步骤中创建以下条件:

Registry "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\Logging\@Global\LogLevel" (REG_DWORD) equals "1"

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RegistryKey

指定要检查的注册表项路径。 例如,使用 HKeyLocalMachineRootKey,可以指定注册表项 SOFTWARE\Microsoft\CCM

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-RegistryOperator

使用此参数指定任务序列的 运算符来评估注册表值。 如果使用 ExistsNotExists 值,则无需使用 RegistryValueData 参数。

类型:VariableOperatorType
接受的值:Exists, NotExists, Equals, NotEquals, Greater, GreaterEqual, Less, LessEqual
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-RegistryValueData

如果使用类似 的Equals比较 RegistryOperator,请使用此参数指定要计算的值数据。 使用 ValueType 指定注册表类型。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RegistryValueName

指定要检查的注册表值的名称。 如果未指定此参数,则条件将检查指定的 RegistryKey (Default) 值。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RootKey

指定要检查的注册表项。

类型:RegistryRootKeyType
接受的值:HKeyCurrentUser, HKeyLocalMachine, HKeyUsers, HKeyCurrentConfig
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ValueType

指定要检查的注册表值的类型。 将此参数与 RegistryValueData 一起使用可指定值数据。

类型:RegistryValueType
接受的值:RegistrySZ, RegistryExpandSZ, RegistryDWord
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

None

输出

IResultObject

备注

有关此返回对象及其属性的详细信息,请参阅 SMS_TaskSequence_RegistryConditionExpression服务器 WMI 类