Question : Powershell - déterminer si le service existe sur l'ordinateur à distance

Les contrôles de programmation ci-joints le statut d'un service sur les ordinateurs à distance pour déterminer si le service existe ou pas.  Pour le get
Installed du rendement I - pour les ordinateurs qui ont IISAdmin
not a installé - pour les ordinateurs qui n'ont pas IISAdmin
not installé - pour les ordinateurs qui ne peuvent pas être groupe de l'accessed

The pour la dernière fois je voudrais changer.  Comment peut-il faire déterminer des manuscrits de powershell si le module de service est même accessible ?  Je ne veux pas « non installé » si le système ne peut pas être checked.

Thanks à l'avance… again.

C
class= > " clair " de
> de " codeSnippet " de class= de
class= " lineNumbers " de
class= de
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
class= " de l'id= " codeSnippet965228 de
$colComputers = obtenir-contenu « c:\powershell\outputfiles\AccessPass.Txt »
foreach ($strComputer dans $colComputers)
    {
     
     $iisAdminSVC = [System.ServiceProcess.ServiceController] : : GetServices ($strComputer) | là où {$_.name - eq « IISADMIN »}
     commuter ($iisAdminSVC.status)
        {     
        « Courant » {$InstallStatus = « installé »}
        « Arrêté » {$InstallStatus = « installé »}
        « Fait une pause » {$InstallStatus = « installé »}
        « Commençant » {$InstallStatus = « installé »}
        « S'arrêtant » {$InstallStatus = « installé »}
        "" {$InstallStatus = « non installé »}
        }   
     écrire-centre serveur $strComputer $InstallStatus
    }
class= de

Réponse : Powershell - déterminer si le service existe sur l'ordinateur à distance

Je ferais ceci. (il y a un bogue avec l'obtenir-service, ce serait le plus élégant, mais à distance il ne manipule pas le silentlycontinue)
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
$colComputers = obtenir-contenu « c:\powershell\outputfiles\AccessPass.Txt »  
foreach ($strComputer dans $colComputers)  
    {  
     $IISAdminSVC = Obtiennent-WmiObject - la classe win32_service - filtrent « nommé = « IISAdminSVC » » - ErrorAction SilentlyContinue
     si ($ ?) { 
	 	si ($iisAdminSVC) {$InstallStatus = « installé »}
		autrement {$InstallStatus = « non installé »}
	}
	 autrement {$InstallStatus = « Inacccessible »}
     écrire-centre serveur $strComputer $InstallStatus  
    }
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us