共用方式為


DSC 登錄資源

適用於:Windows PowerShell 4.0、Windows PowerShell 5.x

Windows PowerShell 預期狀態設定 (DSC) 的 Registry 資源會提供一個機制,在目標節點管理登錄機碼和值。

注意

此 DSC 資源的這份檔涵蓋 7.2 版之前 PowerShell 隨附的版本。 PSDscResources模組包含 Microsoft 正式支援的全新和更新 DSC 資源。 PSDscResources 模組可從 PowerShell 資源庫中取得。

如需詳細資訊和更新的檔,請參閱 PSDscResources 參考檔

語法

Registry [string] #ResourceName
{
    Key = [string]
    ValueName = [string]
    [ Force =  [bool]   ]
    [ Hex = [bool] ]
    [ ValueData = [string[]] ]
    [ ValueType = [string] { Binary | Dword | ExpandString | MultiString | Qword | String }  ]
    [ DependsOn = [string[]] ]
    [ Ensure = [string] { Present | Absent }  ]
    [ PsDscRunAsCredential = [PSCredential] ]
}

屬性

屬性 描述
Key 指出您要確保其特定狀態的登錄機碼路徑。 此路徑必須包含登錄區。
ValueName 指出登錄值的名稱。 若要新增或移除登錄機碼,請將此屬性指定為空字串,且不指定 ValueTypeValueData。 若要修改或移除登錄機碼的預設值,請將此屬性指定為空字串,同時也指定 ValueTypeValueData
Force 如果指定的登錄機碼存在,Force 會以新值覆寫登錄機碼。 如果要刪除含有子機碼的登錄機碼,這必須是 $true
Hex 指出資料是否以十六進位格式表示。 如果指定為 Hex,則 DWORD/QWORD 值資料會以十六進位格式顯示。 不適用於其他類型。 預設值是 $false
ValueData 登錄值的資料。
ValueType 指出值的類型。 支援的型別包括 :String (REG_SZ) 、 Binary (REG_BINARY) 、 Dword (32 位REG_DWORD) 、 Qword (64 位REG_QWORD) 、 MultiString (REG_MULTI_SZ) 、 ExpandString (REG_EXPAND_SZ) 。

通用屬性

屬性 描述
DependsOn 表示必須先執行另一個資源的設定,再設定這個資源。 例如,如果第一個想要執行的資源設定指令碼區塊識別碼是 ResourceName,而其類型是 ResourceType,則使用這個屬性的語法就是 DependsOn = "[ResourceType]ResourceName"
Ensure 指出金鑰和值是否存在。 若要確定存在,可將此屬性設定為 Present。 若要確定不存在,可將此屬性設定為 Absent。 預設值為 Present
PsDscRunAsCredential 設定用於執行整個資源的認證。

注意

已在 WMF 5.0 中新增 PsDscRunAsCredential 通用屬性,以允許在其他認證的內容中執行任何 DSC 資源。 如需詳細資訊,請參閱搭配 DSC 資源使用認證

範例

範例 1:確定指定的值和資料位於指定的登錄機碼下

這個範例可確認位於名為 "ExampleKey1" 機碼下的登錄值 "TestValue" 存在於 HKEY\_LOCAL\_MACHINE 登錄區中,且包含資料 "TestData"。

Configuration RegistryTest
{
    Import-DscResource -ModuleName 'PSDesiredStateConfiguration'

    Registry RegistryExample
    {
        Ensure      = "Present"  # You can also set Ensure to "Absent"
        Key         = "HKEY_LOCAL_MACHINE\SOFTWARE\ExampleKey1"
        ValueName   = "TestValue"
        ValueData   = "TestData"
    }
}

範例 2:確定指定的登錄機碼是否存在

此範例可確保 HKEY_LOCAL_MACHINE hive 中存在名為 「ExampleKey2」 的索引鍵。

Configuration RegistryTest
{
    Import-DscResource -ModuleName 'PSDesiredStateConfiguration'

    Registry RegistryExample
    {
        Ensure      = "Present"  # You can also set Ensure to "Absent"
        Key         = "HKEY_LOCAL_MACHINE\SOFTWARE\ExampleKey2"
        ValueName   = ""
    }
}

注意

變更 HKEY_CURRENT_USER 登錄區中的登錄設定必須以使用者認證執行設定,而不是使用系統認證。 您可以使用 PsDscRunAsCredential 屬性指定設定時所要使用的使用者認證。 如需範例,請參閱以使用者認證執行 DSC