New-CMDetectionClauseRegistryKeyValue

レジストリ キー値の検出方法句を作成します。

構文

New-CMDetectionClauseRegistryKeyValue
   -ExpressionOperator <RegistryValueRuleExpressionOperator>
   -Hive <RegistryRootKey>
   [-Is64Bit]
   -KeyName <String>
   -PropertyType <SettingDataType>
   -ValueName <String>
   -ExpectedValue <String[]>
   [-Value]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]
New-CMDetectionClauseRegistryKeyValue
   -Hive <RegistryRootKey>
   [-Is64Bit]
   -KeyName <String>
   -PropertyType <SettingDataType>
   -ValueName <String>
   [-Existence]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [<CommonParameters>]

説明

このコマンドレットを使用して、アプリケーションの検出方法で句を作成します。 この句は、アプリケーションの存在を示すレジストリ キー値のルールです。

値の代わりにレジストリ キーの存在を検出するには 、New-CMDetectionClauseRegistryKey コマンドレットを使用 します。

このコマンドレットを使用した後、展開の種類に 対して、Add コマンドレット または Set- コマンドレットのいずれかを使用します。 この検出句オブジェクトを AddDetectionClause パラメーターまたは RemoveDetectionClause パラメーターに渡 します。

検出句をグループ化するには、展開の種類のコマンドレットで GroupDetectionClauses パラメーターを使用します。

注意

Configuration Manager サイト ドライブから Configuration Manager コマンドレットを実行します PS XYZ:\> 。 詳細については 、「Getting started」を参照してください

例 1: レジストリ値の存在を検出する

この例では、現在のバージョン値の Git の存在を検出するWindows作成します。

$regClause = New-CMDetectionClauseRegistryKeyValue -Hive LocalMachine -KeyName "SOFTWARE\GitForWindows" -PropertyType String -ValueName "CurrentVersion" -Existence

Set-CMMsiDeploymentType -ApplicationName "Git for Windows" -DeploymentTypeName "Install" -AddDetectionClause $regClause

例 2: レジストリのバージョン値を比較する

次の使用例は、レジストリ内のMicrosoft 365のバージョンを比較する句を作成します 16.0.10730.20304

$clause = New-CMDetectionClauseRegistryKeyValue -Hive LocalMachine -KeyName 'Software\Microsoft\Office\ClickToRun\Configuration' -PropertyType Version -ValueName 'VersionToReport' -Value -ExpectedValue '16.0.10730.20304' -ExpressionOperator GreaterEquals

Set-CMMsiDeploymentType -ApplicationName "Microsoft 365" -DeploymentTypeName "Install" -AddDetectionClause $clause

パラメーター

-DisableWildcardHandling

このパラメーターは、ワイルドカード文字をリテラル文字値として扱います。 ForceWildcardHandling と組み合わせは使用できない

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Existence

このパラメーターを追加する場合、このアプリケーションの存在を示すために、レジストリ キーの値がターゲット システムに存在している必要があります。

存在する代わりに、このレジストリ キー値のデータのルールを評価するには 、Value パラメーターを使用します。

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ExpectedValue

Value パラメーターを追加する場合、ExpectedValue と PropertyTypeExpressionOperator を使用します。 **** これらのパラメーターを使用する場合、レジストリ キーの値は、このアプリケーションの存在を示すルールを満たす必要があります。 この ExpectedValue パラメーターは、レジストリ キー値と比較する値を指定します。

比較する値は、指定した PropertyType によって異なります

Type:String[]
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ExpressionOperator

Value パラメーターを追加 する場合、PropertyType と ExpectedValue を持つ ExpressionOperator を使用します。 これらのパラメーターを使用する場合、レジストリ キーの値は、このアプリケーションの存在を示すルールを満たす必要があります。 この ExpressionOperator パラメーターは、レジストリ キー値と予想される値を比較する演算子を指定します。

バージョン 2010 から、パラメーターの種類が RuleExpressionOperator から RegistryValueRuleExpressionOperator に変更されました

Type:RegistryValueRuleExpressionOperator
Accepted values:IsEquals, NotEquals, GreaterThan, LessThan, Between, GreaterEquals, LessEquals, OneOf, NoneOf, BeginsWith, NotBeginsWith, EndsWith, NotEndsWith, Contains, NotContains
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 パラメーターを使用して、キー名を指定します。 レジストリ キー の値を指定するには、ValueName パラメーターを使用します。

たとえば、次の PowerShell コマンドは、次のパラメーター値に変換されます。

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' | Select-Object CurrentVersion

パラメーター
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
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 パラメーター を使用 して、このキーが存在するレジストリ ハイブを指定します。 レジストリ キー の値を指定するには、ValueName パラメーターを使用します。

たとえば、次の PowerShell コマンドは、次のパラメーター値に変換されます。

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' |Select-Object CurrentVersion

パラメーター
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
Type:String
Aliases:RegistryKey
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PropertyType

Value パラメーターを追加 する場合、ExpressionOperator と ExpectedValue で PropertyType を使用します。 これらのパラメーターを使用する場合、レジストリ キーの値は、このアプリケーションの存在を示すルールを満たす必要があります。 この PropertyType パラメーターは、レジストリ キー値のデータ型を指定します。

たとえば、このパラメーターをに設定し Version 、ExpressionOperator を 、および IsEquals ExpectedValue に設定します 1.48.1.0 。 次に、指定したレジストリ キーの値が同じバージョンに設定されているのをチェックします。

Type:SettingDataType
Accepted values:Version, Integer, String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Value

Value パラメーターを追加 する場合 、レジストリ キーの値は、このアプリケーションの存在を示すルールを満たす必要があります。 このパラメーターは 、ExpectedValue、ExpressionOperator、PropertyTypeのパラメーターと一緒に使用します。 ****

ルールを評価する代わりに、レジストリ キーの値が存在することを確認するには 、Exists パラメーターを使用します。

Type:SwitchParameter
Aliases:ValueRule
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ValueName

アプリケーションの存在を示すレジストリ キーの値を指定します。 Hive パラメーター を使用 してレジストリ ハイブを指定し 、KeyName を使用してレジストリ キーを指定します。

たとえば、次の PowerShell コマンドは、次のパラメーター値に変換されます。

Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' |Select-Object CurrentVersion

パラメーター
Hive LocalMachine
KeyName 'SOFTWARE\Microsoft\Windows NT\CurrentVersion'
ValueName CurrentVersion
Type:String
Aliases:RegistryValueName
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

入力

なし

出力

System.Object