Delen via


New-Service

Hiermee maakt u een nieuwe Windows-service.

Syntaxis

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

Description

De cmdlet New-Service maakt een nieuwe vermelding voor een Windows-service in het register en in de servicedatabase. Voor een nieuwe service is een uitvoerbaar bestand vereist dat wordt uitgevoerd tijdens de service.

Met de parameters van deze cmdlet kunt u de weergavenaam, beschrijving, opstarttype en afhankelijkheden van de service instellen.

Voorbeelden

Voorbeeld 1: Een service maken

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

Met deze opdracht maakt u een service met de naam TestService.

Voorbeeld 2: Een service maken die een beschrijving, opstarttype en weergavenaam bevat

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."

Met deze opdracht maakt u een service met de naam TestService. Hierbij worden de parameters van New-Service gebruikt om een beschrijving, opstarttype en weergavenaam voor de nieuwe service op te geven.

Voorbeeld 3: De nieuwe service weergeven

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

Met deze opdracht wordt Get-WmiObject- gebruikt om het Win32_Service-object voor de nieuwe service op te halen. Dit object bevat de startmodus en de servicebeschrijving.

Voorbeeld 4: Een service verwijderen

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

In dit voorbeeld ziet u twee manieren om de TestService-service te verwijderen. De eerste opdracht maakt gebruik van de optie verwijderen van Sc.exe. De tweede opdracht maakt gebruik van de methode Delete van de Win32_Service objecten die Get-WmiObject retourneert.

Parameters

-BinaryPathName

Hiermee geeft u het pad van het uitvoerbare bestand voor de service. Deze parameter is vereist.

Type:String
Position:1
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Confirm

U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u het account dat door de service wordt gebruikt als het serviceaanmeldingsaccount.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential--object in, zoals een object dat is gegenereerd door de Get-Credential-cmdlet. Als u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.

Type:PSCredential
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DependsOn

Hiermee geeft u de namen van andere services waarop de nieuwe service afhankelijk is. Als u meerdere servicenamen wilt invoeren, gebruikt u een komma om de namen te scheiden.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Description

Hiermee geeft u een beschrijving van de service.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-DisplayName

Hiermee geeft u een weergavenaam voor de service op.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Name

Hiermee geeft u de naam van de service. Deze parameter is vereist.

Type:String
Aliassen:ServiceName
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-StartupType

Hiermee stelt u het opstarttype van de service in. De acceptabele waarden voor deze parameter zijn:

  • Handmatig. De service wordt alleen handmatig gestart door een gebruiker, met behulp van Service Control Manager of door een toepassing.
  • Automatisch. De service wordt gestart of gestart door het besturingssysteem, bij het opstarten van het systeem. Als een automatisch gestarte service afhankelijk is van een handmatig gestarte service, wordt de handmatig gestarte service ook automatisch gestart bij het opstarten van het systeem.
  • Invalide. De service is uitgeschakeld en kan niet worden gestart door een gebruiker of toepassing.

De standaardwaarde is Automatisch.

Type:ServiceStartMode
Geaccepteerde waarden:Automatic, Manual, Disabled
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

None

U kunt invoer voor deze cmdlet niet doorsluisen.

Uitvoerwaarden

ServiceController

Met deze cmdlet wordt een object geretourneerd dat de nieuwe service vertegenwoordigt.

Notities

  • Als u deze cmdlet wilt uitvoeren op Windows Vista en latere versies van het Windows-besturingssysteem, start u Windows PowerShell met behulp van de optie Als administrator uitvoeren.
  • Als u een service wilt verwijderen, gebruikt u Sc.exeof gebruikt u de cmdlet Get-WmiObject om het Win32_Service-object op te halen dat de service vertegenwoordigt en gebruikt u vervolgens de methode Delete om de service te verwijderen. Het object dat Get-Service retourneert, heeft geen verwijdermethode.