Folgende Funktionen tatsächlich tut den Trick:Powershell - Entfernen Sie alle Objekte in einem Registrierungselement
function Remove-AllItemProperties([String] $path) {
Get-ItemProperty $path | Get-Member -MemberType Properties | Foreach-Object {
if (("PSChildName","PSDrive","PSParentPath","PSPath","PSProvider") -notcontains $_.Name) {
Remove-itemproperty -path $path -Name $_.Name
}
}
}
Zum Beispiel: Um alle eingegebenen URLs aus der Registrierung löschen Sie
Remove-AllItemProperties("HKCU:\SOFTWARE\Microsoft\Internet Explorer\TypedURLs")
Meine Probleme verwenden können sind:
Da im zu Powershell relativ neu: ich frage mich, ob nicht ein schöneres (dh kompakt ist Lösung für das Problem.
Die Funktion gibt einen Fehler aus, wenn das Element (Registrierungsschlüssel) keine Eigenschaften hat (Get-Member beschwert sich über ein fehlendes Objekt).
Vielen Dank für Ihre Ideen!
Dank Mathias! So kompakt und so elegant wie es nur geht. Danke auch für Ihre ausführliche Erklärung ... – coderookie