2014-11-05 7 views
1

Я пытаюсь получить список связанных экземпляров для win32_service, а затем разделить эти экземпляры на основе того, зависят они от «или зависят от» win32_service.Может ли Get-CimAssociatedInstance различать антецедентные и зависимые win32_services?

Например, я могу получить список ассоциаций для WAS службы:

$service = Get-CimInstance -Query "SELECT * FROM win32_service WHERE name='WAS'" 
Get-CimAssociatedInstance -InputObject $service -Association "win32_dependentservice" 

Это позволяет мне получить список услуг, связанных с WAS; однако он не указывает, являются ли они «антецедентами» или «зависимыми» объектами.

Если я использую Wai, так что я могу видеть, что объекты перечислены предшествующими и зависимых ключи:

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, чтобы определить, зависит ли служба/антецедент?

EDIT: Я специально хочу знать, возможно ли получение этой информации с помощью командлетов Cim. Я знаю, что Get-Service может получить информацию, но это не то, о чем я прошу здесь.

+0

Любые причины, по которым вы не используете Get-Service? Он показывает DependentServices и ServicesDependedOn. – TheMadTechnician

+0

@ TheMadTechnician Я не упоминал об этом здесь, но в моей ситуации мне нужно свойство StartMode. У Get-Service этого нет. Мне также нужен тип win32_service, а не тип ServiceController. – Ci3

+1

Я хочу, чтобы на этот вопрос был дан правильный ответ. –

ответ

0

Я скажу, что это ответ. Я считаю, что лучшим решением для вас будет использование командлета Get-Service. Он предоставляет вам информацию, которую вы запрашиваете. Пример использования и вывода:

PS C:\windows\system32> Get-Service wwansvc|fl 


Name    : wwansvc 
DisplayName   : WWAN AutoConfig 
Status    : Stopped 
DependentServices : {} 
ServicesDependedOn : {wcmsvc, RpcSs, NdisUio} 
CanPauseAndContinue : False 
CanShutdown   : False 
CanStop    : False 
ServiceType   : Win32ShareProcess 

Это показывает, что ничто не зависит от него, но это зависит от wcmsvc, RpcSs и NdisUio.

 Смежные вопросы

  • Нет связанных вопросов^_^