Partager via


New-Service

Crée un service Windows.

Syntaxe

New-Service
   [-Name] <String>
   [-BinaryPathName] <String>
   [-DisplayName <String>]
   [-Description <String>]
   [-StartupType <ServiceStartMode>]
   [-Credential <PSCredential>]
   [-DependsOn <String[]>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

La cmdlet New-Service crée une entrée pour un service Windows dans le Registre et dans la base de données de service. Un nouveau service nécessite un fichier exécutable qui s’exécute pendant le service.

Les paramètres de cette applet de commande vous permettent de définir le nom d’affichage, la description, le type de démarrage et les dépendances du service.

Exemples

Exemple 1 : Créer un service

PS C:\> New-Service -Name "TestService" -BinaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs"

Cette commande crée un service nommé TestService.

Exemple 2 : Créer un service qui inclut la description, le type de démarrage et le nom complet

PS C:\> New-Service -Name "TestService" -BinaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs" -DependsOn NetLogon -DisplayName "Test Service" -StartupType Manual -Description "This is a test service."

Cette commande crée un service nommé TestService. Il utilise les paramètres de nouveau-service pour spécifier une description, un type de démarrage et un nom d’affichage pour le nouveau service.

Exemple 3 : Afficher le nouveau service

PS C:\> Get-WmiObject win32_service -Filter "name='testservice'"
ExitCode  : 0
Name      : testservice
ProcessId : 0
StartMode : Auto
State     : Stopped
Status    : OK

Cette commande utilise Get-WmiObject pour obtenir l’objet Win32_Service pour le nouveau service. Cet objet inclut le mode de démarrage et la description du service.

Exemple 4 : Supprimer un service

PS C:\> sc.exe delete TestService
- or -
PS C:\> (Get-WmiObject win32_service -Filter "name='TestService'").delete()

Cet exemple montre deux façons de supprimer le service TestService. La première commande utilise l’option de suppression de Sc.exe. La deuxième commande utilise la méthode Delete des objets Win32_Service qui Get-WmiObject retourne.

Paramètres

-BinaryPathName

Spécifie le chemin d’accès du fichier exécutable pour le service. Ce paramètre est requis.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Credential

Spécifie le compte utilisé par le service comme compte d’ouverture de session du service .

Tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou entrez un objet PSCredential, tel qu’un objet généré par l’applet de commande Get-Credential. Si vous tapez un nom d’utilisateur, cette applet de commande vous invite à entrer un mot de passe.

Type:PSCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DependsOn

Spécifie les noms des autres services sur lesquels dépend le nouveau service. Pour entrer plusieurs noms de service, utilisez une virgule pour séparer les noms.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Description

Spécifie une description du service.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DisplayName

Spécifie un nom complet pour le service.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Name

Spécifie le nom du service. Ce paramètre est requis.

Type:String
Alias:ServiceName
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StartupType

Définit le type de démarrage du service. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Manuelle. Le service est démarré manuellement, par un utilisateur, à l’aide du Gestionnaire de contrôle de service ou d’une application.
  • Automatique. Le service est démarré ou a été démarré par le système d’exploitation, au démarrage du système. Si un service démarré automatiquement dépend d’un service démarré manuellement, le service démarré manuellement est également démarré automatiquement au démarrage du système.
  • Handicapé. Le service est désactivé et ne peut pas être démarré par un utilisateur ou une application.

La valeur par défaut est Automatique.

Type:ServiceStartMode
Valeurs acceptées:Automatic, Manual, Disabled
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Vous ne pouvez pas diriger l’entrée vers cette applet de commande.

Sorties

ServiceController

Cette applet de commande retourne un objet qui représente le nouveau service.

Notes

  • Pour exécuter cette applet de commande sur Windows Vista et les versions ultérieures du système d’exploitation Windows, démarrez Windows PowerShell à l’aide de l’option Exécuter en tant qu’administrateur.
  • Pour supprimer un service, utilisez Sc.exeou utilisez l’applet de commande Get-WmiObject pour obtenir l’objet Win32_Service qui représente le service, puis utilisez la méthode Delete pour supprimer le service. L’objet qui Get-Service renvoie n’a pas de méthode delete.