我在Powershell中找到获取StdRegProv WMI类实例的唯一方法是
$StdRegProv = Get-WmiObject -List -Namespace root\default -ComputerName "my_computer" -Credential $cred | where { $_.Name -eq "StdRegProv" }
我需要走这条路,因为我想提供一个凭证。天真的我会期望以下工作:
$StdRegProv = Get-WmiObject -Class StdRegProv -Namespace root\default -ComputerName "my_computer" -Credential $cred
但它没有 - 为什么你不能以这种方式获得StdRegProv?
答案 0 :(得分:1)
据我所知,Get-WmiObject返回类的现有实例。如果没有实例,则会获得一个空集合。 (但是不要引用我这个,因为它只是一个猜测 - 我没有看过Get-WmiObject代码。)
无论如何,你可以使用:
[WMIClass]"root\default:StdRegProv"
实例化该类。或者,如果必须是gwmi:
Get-WmiObject -List -Namespace "root\default" -ComputerName "my_computer" `
| Where-Object {$_.Name -eq "StdRegProv"}