Системные свойства WSMAN и WMI

Я пытаюсь получить свойство __PATH в запросе WQL.

Когда я пытаюсь перечислить его, используя 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 ответ

Решение

__PATH это WMI- специфичные метаданные.

Путь (в терминологии WMI) - это URL-подобный идентификатор ресурса, который помогает вам найти конкретный объект.

WSMan не разделяет эту концепцию, но описывает ресурсы, ссылаясь на ResourceURI (или имя класса, в вашем случае wmicimv2/Win32_Process) и один или несколько ключевых селекторов, чтобы различать уникальный экземпляр. "Путь", как таковой, действительно содержится в этих двух частях информации:

PS C:\> (Get-WSManInstance wmicimv2/Win32_Process -SelectorSet {Handle = 4}).Caption
System
Другие вопросы по тегам