用Get-CimInstance替换Get-WmiObject

时间:2019-02-07 08:23:35

标签: powershell wmi dcom cim

我们正在查看我们的代码,并试图用CIM替换WMI CmdLets。以下代码可以正常工作:

$Query = "SELECT InstalledLocation,ProductVersion,ProductName FROM SMS_R_System
JOIN
    SMS_G_SYSTEM_Installed_Software on SMS_R_System.ResourceID =
    SMS_G_SYSTEM_Installed_Software.ResourceID
WHERE SMS_R_SYSTEM.Name=""$C"" "

Get-WmiObject -ComputerName $SCCMServer -Namespace $SCCMNameSpace -Query $Query

由于WMI默认使用DCOM,因此我们认为它与使用以下命令一样容易:

$CimSessionOption = New-CimSessionOption –Protocol DCOM
$CimSession = New-CimSession -ComputerName $SCCMServer -SessionOption $CimSessionOption
Get-CimInstance -CimSession $CimSession -Namespace $SCCMNameSpace -Query $Query

尽管我们使用相同的连接协议,但我们收到错误New-CimSession : Access denied

我们这里显然缺少什么吗?

0 个答案:

没有答案