2012-08-30 37 views
0

希望你能帮助...得到-itemproperty不返回所有属性

执行下面的PowerShell(我顺便说一句是新手),以获得一个注册表项的值,当我执行第一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> 

回答

1

您几乎可以肯定地看到在64位机器上的32位 reg hive。仔细检查你的注册路径 - 它真的是HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0

我在32位密钥中看到属性(例如InstallDir),但没有看到64位密钥。

这将是适当的查询,如果这样:

Get-ItemProperty -path HKLM:\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0 
+0

我认为我对你给它。电池耗尽,所以不能尝试,但这一切都有道理!谢谢。 – TimmyD

0

这是我看到的注册表编辑器:

enter image description here

所以,你从Get-ItemProperty得到的输出是正确的。对于您提到的另一条路径,您会看到有很多值。

您可以通过使用Get-ChildItem cmdlet来获得10.0之类的调试器等。

相关问题