我正在尝试获取 win32_service 的关联实例列表,然后根据它们是“依赖”还是“需要”win32_service 来分离这些实例。
例如,我可以获得 WAS 服务的关联列表:
$service = Get-CimInstance -Query "SELECT * FROM win32_service WHERE name='WAS'"
Get-CimAssociatedInstance -InputObject $service -Association "win32_dependentservice"
这使我能够获得与 WAS 相关的服务列表;但是,它没有说明它们是“先行”还是“从属”对象。
如果我使用 WQL,我可以看到对象是由先行键和从属键枚举的:
Get-CimInstance -Query "SELECT * FROM win32_dependentservice"
而且,我可以在使用“关联者”时指定密钥
Get-CimInstance -Query "Associators of {win32_service.name='WAS'} WHERE AssocClass=win32_dependentservice Role=dependent"
是否可以在 Get-CimAssociatedInstance 中指定“角色”?或者,我是否坚持使用 WQL 来确定服务是否依赖/先行?
编辑:我特别想知道是否可以使用 Cim cmdlet 获取此信息。我知道 Get-Service 可以获取信息,但这不是我在这里要问的。