Condividi tramite


Rimuovere una chiave del Registro di sistema

Descrizione

In questo esempio viene illustrato come usare la Registry risorsa per assicurarsi che una chiave del Registro di sistema non esista.

Con Ensure impostato su Absent, ValueName impostato su una stringa vuota e Key impostato su HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\MyNewKey, la risorsa rimuove la chiave del MyNewKey Registro di sistema, se esistente.

Con Invoke-DscResource

Questo script illustra come usare la Registry risorsa con il Invoke-DscResource cmdlet per assicurarsi che la chiave del MyNewKey Registro di sistema non esista.

[CmdletBinding()]
param()

begin {
    $SharedParameters = @{
        Name       = 'Registry'
        ModuleName = 'PSDscResource'
        Properties = @{
            Key       = 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\MyNewKey'
            Ensure    = 'Absent'
            ValueName = ''
        }
    }

    $NonGetProperties = @(
        'Ensure'
    )
}

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 configurazione

Questo frammento di codice illustra come definire un Configuration oggetto con un Registry blocco di risorse per assicurarsi che la chiave del MyNewKey Registro di sistema non esista.

Configuration RemoveKey {
    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost {
        Registry ExampleRegistry {
            Key       = 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\MyNewKey'
            Ensure    = 'Absent'
            ValueName = ''
        }
    }
}