Agregar o actualizar un valor de clave del Registro
Descripción
En este ejemplo se muestra cómo puede usar el Registry
recurso para asegurarse de que se establece un valor de clave del Registro.
Con Ensure establecido en Present
, ValueName establecido en MyValue
y Key establecido HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
en , el recurso agrega el valor de clave del MyValue
Registro bajo la Environment
clave si no existe.
Con ValueType establecido en Binary
, ValueData establecido 0x00
en y Force establecido $true
en , el recurso establece el valor 0
de clave del Registro en incluso si existe con un valor diferente.
Con Invoke-DscResource
Este script muestra cómo puede usar el Registry
recurso con el Invoke-DscResource
cmdlet para asegurarse de que la clave del Environment
Registro tiene el MyValue
valor establecido en 0
.
[CmdletBinding()]
param()
begin {
$SharedParameters = @{
Name = 'Registry'
ModuleName = 'PSDscResource'
Properties = @{
Key = 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment'
Ensure = 'Present'
ValueName = 'MyValue'
ValueType = 'Binary'
ValueData = '0x00'
Force = $true
}
}
$NonGetProperties = @(
'Ensure'
'ValueType'
'ValueData'
'Force'
)
}
process {
$TestResult = Invoke-DscResource -Method Test @SharedParameters
if ($TestResult.InDesiredState) {
$QueryParameters = $SharedParameters.Clone()
foreach ($Property in $NonGetProperties) {
$QueryParameters.Properties.Remove($Property)
}
Invoke-DscResource -Method Get @QueryParameters
} else {
Invoke-DscResource -Method Set @SharedParameters
}
}
Con una configuración
Este fragmento de código muestra cómo puede definir un Configuration
con un Registry
bloque de recursos para asegurarse de que la clave del Environment
Registro tiene el MyValue
valor establecido en 0
.
Configuration AddOrModifyValue {
Import-DscResource -ModuleName 'PSDscResources'
Node localhost {
Registry ExampleRegistry {
Key = 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment'
Ensure = 'Present'
ValueName = 'MyValue'
ValueType = 'Binary'
ValueData = '0x00'
Force = $true
}
}
}