2015-11-03 96 views
0

我试图在WQL查询中检索__PATH属性。WSMAN和WMI系统属性

当我试图枚举它使用WSMAN和WQL查询时,它只返回ProcessId。

Get-WSManInstance -Enumerate wmicimv2/* -filter "SELECT __PATH, ProcessId FROM Win32_Process" 

但很容易确保__PATH不为空。

Get-WmiObject -Query "SELECT __PATH, ProcessId FROM Win32_Process" -Namespace root/cimv2 

为什么无法在枚举请求中检索WMI系统属性(如__PATH)?

回答

1

__PATHWMI特定的元数据。

路径(在WMI术语中)是一个URL-资源标识符,可帮助您找到特定的对象。

的WSMan不共享的概念,而是通过引用ResourceURI(或类的名字,你的情况wmicimv2/Win32_Process)描述资源,以及一个或多个键选择区分一个唯一的实例。 “路径”,因此,真正包含在这些两条信息:

PS C:\> (Get-WSManInstance wmicimv2/Win32_Process -SelectorSet {Handle = 4}).Caption 
System 
+0

必须添加@到{手柄= 4} – John

+0

我也问过微软论坛这个问题和接收的同一个问题的https: //social.msdn.microsoft.com/Forums/en-US/38ce6e82-cbe5-44c7-98c5-9dc8a8701e9f/wsman-and-wmi-system-properties?forum=os_windowsprotocols – John

+0

@John绝对正确,我的部分错别字。请建议编辑 –