次のスクリプトブロックを使用して、特定のレジストリ値の存在を確認できることを知っています。
Registry ConfigureRegistry
{
Ensure = 'Present'
Key = 'HKEY_LOCAL_MACHINE\SOFTWARE\SomeKey'
ValueName = 'MachineType'
ValueData = 'Hyper-V'
}
しかし、どうすればレジストリキーSomeKey
を削除できますか?キーワードを変更するだけならEnsure = "Present"
からEnsure = "Absent"
キーを残しますSomeKey
.。
これは可能になりました。VertigoRayの回答を参照してください。
ご存知のように、現時点ではRegistry
リソースではこれは不可能です。
Script
resource を使用するか、代わりに完全なカスタムリソースを作成できます。
これは可能です、 文書化されているように :
レジストリキーを追加または削除するには、ValueTypeまたはValueDataを指定せずに、[ValueName]を空の文字列として指定します。
Registry ConfigureRegistry
{
Ensure = 'Absent'
Key = 'HKEY_LOCAL_MACHINE\SOFTWARE\SomeKey'
ValueName = ''
}
PSDriveも機能します。
Registry ConfigureRegistry
{
Ensure = 'Absent'
Key = 'HKLM:\SOFTWARE\SomeKey'
ValueName = ''
}