繁体   English   中英

如何使用Powershell从注册表获取详细信息?

[英]How to get details from Registry using Powershell?

如何从NTP服务器的注册表中获取值。

$hklm = 2147483650
$key = "SYSTEM\CurrentControlSet\Control\services\W32Time\Parameters"
$value = "NtpServer"


$wmi = get-wmiobject -list "StdRegProv" -namespace root\default 
$wmi2 = ($wmi.GetMultiStringValue($hklm,$key,$value)).uvalue
$wmi3 = ($wmi.GetStringValue($hklm,$key,$value)).uvalue
$wmi2
$wmi3

如您所见,我尝试了GetMultiStringValue和GetStringValue,但是它们都不返回任何东西。

我没有任何错误。 如果我在注册表中手动检查该值,则可以在其中看到数据。

我究竟做错了什么? 或建议我其他选择。

在我的机器上,该密钥位于其他位置。

(Get-ItemProperty HKLM:\system\CurrentControlSet\Services\W32Time\Parameters).NtpServer

另请参阅: https : //superuser.com/questions/1117040/how-do-i-read-values-of-registry-keys

我的实验室中没有NTP设置,但是我当然可以使用IE来查看那里的IE起始页。 因此,我又添加了一些。 请注意,我将设置两个属性而不是一个,并且正在使用svalue vs uvalue。

根据MSDN文档,在语法上没有uvalue。

UInt32 ReturnValue = GetMultiStringValue(UInt32 hDefKey,字符串sSubKeyName,字符串sValueName'msdn.microsoft.com/zh-cn/library/aa390458(v=vs.85).aspx'

$key = "Software\Microsoft\Internet Explorer\Main" 
$property = "Start Page" 
$property2 = "Secondary Start Pages" 
$wmi = Get-WmiObject -list "StdRegProv" -namespace root\default 
($wmi.GetStringValue($hkcu,$key,$property)).sValue 
($wmi.GetMultiStringValue($hkcu,$key, $property2)).sValue 

结果-

about:tabs
https://technet.microsoft.com/
https://stackoverflow.com/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM