2010-05-16 4 views
3

J'ai une déclaration "New-Object -com Indesign.Application.Cs5 | Get-Membre" Cela fonctionne comme prévu pour le niveau supérieur. Comment recopier l'ensemble de l'arborescence des objets et afficher les résultats dans un format lisible/tableur (si possible).POWERSHELL; Get-Member récursif pour Com Objet

Répondre

3

Le intégré façon de le faire est d'utiliser Format-Custom comme ceci:

Get-Process -id $pid | Format-Custom -Property * -Depth 4 

Si vous voulez récursif plus je pense que vous avez besoin de faire monter la valeur par défaut de FormatEnumerationLimit $ (par défaut à 4). Attention cependant, j'avais l'habitude de passer à 100 et dans certains cas en utilisant fc, PowerShell semblerait se bloquer. Il était soit pris dans un cycle (probablement pas) ou l'opération allait juste prendre plus de temps que j'étais prêt à attendre. BTW la version courte de ce qui précède:

$FormatEnumerationLimit = 10 
gps -id $pid | fc * -dep 10 
+0

Merci Keith, je ne suis pas à PowerShell saavy encore, pourriez-vous s'il vous plaît la mise en page le code complet en utilisant « Indesign.Application.Cs5 » comme l'objet COM. Merci encore – Zion

+0

Essayez ceci: 'New-Object -com Indesign.Application.Cs5 | Format-Custom * -Depth 2'. Réglez la profondeur comme vous le souhaitez, mais notez que le temps nécessaire augmentera probablement de manière significative avec plus de profondeur. –