Powershell

DSC-Resource:如何刪除系統資料庫項(不是值)?

  • February 13, 2019

我知道我可以通過使用以下腳本塊來確保特定系統資料庫值的存在:

   Registry ConfigureRegistry
   {
       Ensure    = 'Present'
       Key       = 'HKEY_LOCAL_MACHINE\SOFTWARE\SomeKey'
       ValueName = 'MachineType'
       ValueData = 'Hyper-V'
   }

但是如何刪除系統資料庫項SomeKey?如果我只將關鍵字更改Ensure = "Present"Ensure = "Absent"它將留下鑰匙SomeKey……

現在這是可能的,請參閱 VertigoRay 的回答。

Registry正如您所發現的,目前使用該資源是不可能的。

您可以使用Script資源或編寫完整的自定義資源。

如文件所述,這是可能的:

要添加或刪除系統資料庫項,請指定

$$ ValueName $$作為沒有指定 ValueType 或 ValueData 的空字元串。

例子

Registry ConfigureRegistry
{
   Ensure    = 'Absent'
   Key       = 'HKEY_LOCAL_MACHINE\SOFTWARE\SomeKey'
   ValueName = ''
}

PSDrives 也可以:

Registry ConfigureRegistry
{
   Ensure    = 'Absent'
   Key       = 'HKLM:\SOFTWARE\SomeKey'
   ValueName = ''
}

引用自:https://serverfault.com/questions/643817