希望你能帮忙......
执行以下powershell(我是新手btw)来获取注册表项的值,当我执行第一个powershell语句时,我得到了我期望的所有属性,但是当我对VisualStudio执行第二个语句时10.0它没有返回属性,即使在注册表编辑器中有一堆属性(包括我正在追逐的InstallDir!)盯着我的脸。你能帮帮忙吗?
由于
PS C:\DEV\GeoMet> Get-ItemProperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
PSChildName : CurrentVersion
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
SM_GamesName : Games
SM_ConfigureProgramsName : Set Program Access and Defaults
CommonFilesDir : C:\Program Files\Common Files
CommonFilesDir (x86) : C:\Program Files (x86)\Common Files
CommonW6432Dir : C:\Program Files\Common Files
DevicePath : C:\Windows\inf
MediaPathUnexpanded : C:\Windows\Media
ProgramFilesDir : C:\Program Files
ProgramFilesDir (x86) : C:\Program Files (x86)
ProgramFilesPath : C:\Program Files
ProgramW6432Dir : C:\Program Files
PS C:\DEV\GeoMet> Get-ItemProperty -path HKLM:\SOFTWARE\Microsoft\VisualStudio\10.0
PS C:\DEV\GeoMet>
答案 0 :(得分:1)
您几乎肯定会在64位计算机上查看 32位注册表。仔细检查您的注册表路径 - 它真的是HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0
吗?
我在32位密钥中看到属性(例如InstallDir),但没有看到64位密钥。
如果是这样,这将是正确的查询:
Get-ItemProperty -path HKLM:\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0
答案 1 :(得分:0)
这是我在注册表中看到的:
因此,您从Get-ItemProperty
获得的输出是正确的。对于你提到的另一条路径,你会发现有很多值。
您可以使用Get-ChildItem
cmdlet获取在调试器等10.0下看到的内容。