Sdílet prostřednictvím


New-Service

Vytvoří novou službu systému Windows.

Syntax

Default (Výchozí)

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

Description

Tato rutina je dostupná jenom na platformě Windows.

Rutina New-Service vytvoří novou položku pro službu systému Windows v registru a v databázi služby. Nová služba vyžaduje spustitelný soubor, který běží během této služby.

Parametry této rutiny umožňují nastavit zobrazovaný název, popis, typ spuštění a závislosti služby.

Příklady

Příklad 1: Vytvoření služby

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

Tento příkaz vytvoří službu s názvem TestService.

Příklad 2: Vytvoření služby, která obsahuje popis, typ spuštění a zobrazovaný název

$params = @{
  Name = "TestService"
  BinaryPathName = 'C:\WINDOWS\System32\svchost.exe -k netsvcs'
  DependsOn = "NetLogon"
  DisplayName = "Test Service"
  StartupType = "Manual"
  Description = "This is a test service."
}
New-Service @params

Tento příkaz vytvoří službu s názvem TestService. Používá parametry New-Service k určení popisu, typu spuštění a zobrazovaného názvu nové služby.

Příklad 3: Zobrazení nové služby

Get-CimInstance -ClassName Win32_Service -Filter "Name='testservice'"
ExitCode  : 0
Name      : testservice
ProcessId : 0
StartMode : Auto
State     : Stopped
Status    : OK

Tento příkaz používá Get-CimInstance k získání objektu Win32_Service pro novou službu. Tento objekt obsahuje režim spuštění a popis služby.

Příklad 4: Nastavení popisovače SecurityDescriptor služby při vytváření

Tento příklad přidá SecurityDescriptor vytvářené služby.

$SDDL = "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;SU)"
$params = @{
  BinaryPathName = 'C:\WINDOWS\System32\svchost.exe -k netsvcs'
  DependsOn = "NetLogon"
  DisplayName = "Test Service"
  StartupType = "Manual"
  Description = "This is a test service."
  SecurityDescriptorSddl = $SDDL
}
New-Service @params

SecurityDescriptor je uložen v proměnné $SDDLToSet. Parametr SecurityDescriptorSddl používá $SDDL k nastavení SecurityDescriptor nové služby.

Parametry

-BinaryPathName

Určuje cestu spustitelného souboru pro službu. Tento parametr je povinný.

Plně kvalifikovaná cesta k binárnímu souboru služby. Pokud cesta obsahuje mezeru, musí být uvozována tak, aby byla správně interpretována. Například d:\my share\myservice.exe je třeba zadat jako '"d:\my share\myservice.exe"'.

Cesta může také obsahovat argumenty pro službu automatického spuštění. Například: '"d:\my share\myservice.exe" arg1 arg2'. Tyto argumenty se předávají vstupnímu bodu služby.

Další informace najdete v parametru lpBinaryPathName rozhraní API CreateService W.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Cesta

Sady parametrů

(All)
Position:1
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Confirm

Před spuštěním cmdletu vás vyzve k potvrzení.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:viz

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Credential

Určuje účet používaný službou jako účet pro přihlášení služby.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential, například objekt vygenerovaný rutinou Get-Credential. Pokud zadáte uživatelské jméno, tato rutina vás vyzve k zadání hesla.

Přihlašovací údaje jsou uloženy v objektu PSCredential a heslo je uloženo jako SecureString.

Poznámka:

Další informace o ochraně dat SecureString najdete v tématu Jak zabezpečený je SecureString?.

Vlastnosti parametru

Typ:PSCredential
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-DependsOn

Určuje názvy dalších služeb, na kterých nová služba závisí. Pokud chcete zadat více názvů služeb, oddělte názvy čárkami.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Description

Určuje popis služby.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-DisplayName

Určuje zobrazovaný název služby.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Name

Určuje název služby. Tento parametr je povinný.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Název služby

Sady parametrů

(All)
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-SecurityDescriptorSddl

Určuje SecurityDescriptor pro službu ve formátu Sddl.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Sd

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-StartupType

Nastaví typ spuštění služby. Přijatelné hodnoty pro tento parametr jsou:

  • Automatické – Služba je spuštěna nebo byla spuštěna operačním systémem při spuštění systému. Pokud automaticky spuštěná služba závisí na ručně spuštěné službě, spustí se při spuštění systému automaticky také ručně spuštěná služba.
  • AutomaticDelayedStart – spustí se krátce po spuštění systému.
  • Zakázáno – Služba je zakázaná a uživatel nebo aplikace ji nemůže spustit.
  • InvalidValue – tato hodnota není podporována. Při použití této hodnoty dojde k chybě.
  • Ruční – služba se spouští pouze ručně, uživatelem, pomocí Správce řízení služeb nebo aplikací.

Výchozí hodnota je Automatické.

Vlastnosti parametru

Typ:ServiceStartupType
Default value:Automatic
Přípustné hodnoty:Automatic, Manual, Disabled, AutomaticDelayedStart, InvalidValue
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-WhatIf

Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Wi

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

None

Do tohoto cmdletu nemůžete předávat objekty.

Výstupy

ServiceController

Tato rutina vrátí objekt představující novou službu.

Poznámky

Tento cmdlet je dostupný pouze na platformách Windows.

Pokud chcete tuto rutinu spustit, spusťte PowerShell pomocí možnosti Spustit jako správce.