New-Service

Yeni bir Windows hizmeti oluşturur.

Syntax

Default (Varsayılan)

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

Description

Bu cmdlet yalnızca Windows platformunda kullanılabilir.

New-Service cmdlet'i, kayıt defterinde ve hizmet veritabanında bir Windows hizmeti için yeni bir girdi oluşturur. Yeni bir hizmet, hizmet sırasında çalışan yürütülebilir bir dosya gerektirir.

Bu cmdlet'in parametreleri hizmetin görünen adını, açıklamasını, başlangıç türünü ve bağımlılıklarını ayarlamanıza olanak sağlar.

Örnekler

Örnek 1: Hizmet oluşturma

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

Bu komut TestService adlı bir hizmet oluşturur.

Örnek 2: Açıklama, başlangıç türü ve görünen ad içeren bir hizmet oluşturma

$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

Bu komut TestService adlı bir hizmet oluşturur. Yeni hizmet için bir açıklama, başlangıç türü ve görünen ad belirtmek üzere New-Service parametrelerini kullanır.

Örnek 3: Yeni hizmeti görüntüleme

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

Bu komut, yeni hizmetin Get-CimInstance nesnesini almak için kullanır. Bu nesne başlangıç modunu ve hizmet açıklamasını içerir.

Örnek 4: Oluştururken bir hizmetin SecurityDescriptor'ını ayarlayın.

Bu örnek, oluşturulan hizmetin SecurityDescriptor ekler.

$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$SDDLToSet değişkeninde depolanır. SecurityDescriptorSddl parametresi, yeni hizmetin $SDDL ayarlamak için kullanır.

Parametreler

-BinaryPathName

Hizmet için yürütülebilir dosyanın yolunu belirtir. Bu parametre gereklidir.

Hizmet ikili dosyasının tam yolu. Yol bir boşluk içeriyorsa, doğru yorumlanması için tırnak içine alınmalıdır. Örneğin, D:\my share\myservice.exe'"D:\my share\myservice.exe"'olarak belirtilmelidir.

Yol, otomatik başlatma hizmetinin bağımsız değişkenlerini de içerebilir. Örneğin, '"D:\my share\myservice.exe" arg1 arg2'. Bu bağımsız değişkenler hizmet giriş noktasına geçirilir.

Daha fazla bilgi için CreateServiceW API'sinin lpBinaryPathName parametresine bakın.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Yol

Parametre kümeleri

(All)
Position:1
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Cf

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Credential

hizmet tarafından Hizmet Oturum Açma Hesabıolarak kullanılan hesabı belirtir.

User01 veya Domain01\User01gibi bir kullanıcı adı yazın ya da cmdlet'i tarafından oluşturulmuş bir Get-Credential nesnesi girin. Bir kullanıcı adı yazarsanız, bu cmdlet sizden parola ister.

Kimlik bilgileri bir PSCredential nesnesinde depolanır ve parola SecureStringolarak depolanır.

Uyarı

SecureString veri koruması hakkında daha fazla bilgi için bkz. SecureString ne kadar güvenli?.

Parametre özellikleri

Tür:PSCredential
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-DependsOn

Yeni hizmetin bağımlı olduğu diğer hizmetlerin adlarını belirtir. Birden çok hizmet adı girmek için adları ayırmak için virgül kullanın.

Parametre özellikleri

Tür:

String[]

Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Description

Hizmetin açıklamasını belirtir.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-DisplayName

Hizmet için bir görünen ad belirtir.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Name

Hizmetin adını belirtir. Bu parametre gereklidir.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Servis Adı

Parametre kümeleri

(All)
Position:0
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-SecurityDescriptorSddl

Hizmet için SecurityDescriptorSddl biçiminde belirtir.

Parametre özellikleri

Tür:String
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Sd

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-StartupType

Hizmetin başlangıç türünü ayarlar. Bu parametre için kabul edilebilir değerler şunlardır:

  • otomatik - Hizmet, işletim sistemi tarafından sistem başlatma sırasında başlatılır veya başlatılmıştır. Otomatik olarak başlatılan bir hizmet el ile başlatılan bir hizmete bağımlıysa, el ile başlatılan hizmet de sistem başlangıcında otomatik olarak başlatılır.
  • AutomaticDelayedStart - Sistem açıldıktan kısa bir süre sonra başlar.
  • Devre Dışı - Hizmet devre dışı bırakıldı ve bir kullanıcı veya uygulama tarafından başlatılamıyor.
  • InvalidValue - Bu değer desteklenmez. Bu değerin kullanılması hatayla sonuçlanır.
  • El İle - Hizmet yalnızca bir kullanıcı tarafından, Hizmet Denetim Yöneticisi kullanılarak veya bir uygulama tarafından el ile başlatılır.

Varsayılan değer Otomatik değeridir.

Parametre özellikleri

Tür:Microsoft.PowerShell.Commands.ServiceStartupType
Default value:Automatic
Kabul edilen değerler:Automatic, Manual, Disabled, AutomaticDelayedStart, InvalidValue
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-WhatIf

Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmaz.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Wi

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

None

Nesneleri bu cmdlet'e yöneltemezsiniz.

Çıkışlar

ServiceController

Bu cmdlet, yeni hizmeti temsil eden bir nesne döndürür.

Notlar

Bu cmdlet yalnızca Windows platformlarında kullanılabilir.

Bu cmdlet'i çalıştırmak için Yönetici olarak çalıştır seçeneğini kullanarak PowerShell'i başlatın.

PowerShell 6.0'da başlayarak, komut artık ComputerName parametresini içermiyor. Bu komutu uzak bir bilgisayarda kullanmak için uzak bir sistemi hedeflemek için komutunu Invoke-Command kullanın.