PowerShell 技能连载 - 获取包含数据类型信息在内的注册表键值

适用于 PowerShell 所有版本

读取所有注册表信息时,如果您不需要数据类型信息,那么十分简单:只需要用 Get-ItemProperty 即可:

Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

如果您确实需要数据类新信息,那么需要做点额外的事情:

$key = Get-Item -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

$key.GetValueNames() |
  ForEach-Object {
    $ValueName = $_

    $rv = 1 | Select-Object -Property Name, Type, Value
    $rv.Name = $ValueName
    $rv.Type = $key.GetValueKind($ValueName)
    $rv.Value = $key.GetValue($ValueName)
    $rv 
  }

本文国际来源:Reading Registry Values with Type

评论