Compartilhar via


New-Service

Cria um novo serviço windows.

Sintaxe

Default (Default)

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

Description

O cmdlet New-Service cria uma nova entrada para um serviço Windows no registro e no banco de dados de serviço. Um novo serviço requer um arquivo executável executado durante o serviço.

Os parâmetros desse cmdlet permitem definir o nome de exibição, a descrição, o tipo de inicialização e as dependências do serviço.

Exemplos

Exemplo 1: Criar um serviço

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

Esse comando cria um serviço chamado TestService.

Exemplo 2: criar um serviço que inclua descrição, tipo de inicialização e nome de exibição

$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

Esse comando cria um serviço chamado TestService. Ele usa os parâmetros de New-Service para especificar uma descrição, um tipo de inicialização e um nome de exibição para o novo serviço.

Exemplo 3: exibir o novo serviço

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

Esse comando usa Get-CimInstance para obter o objeto Win32_Service para o novo serviço. Esse objeto inclui o modo de início e a descrição do serviço.

Exemplo 4: excluir um serviço

sc.exe delete TestService
# - or -
(Get-CimInstance -Class Win32_Service -Filter "name='TestService'").Delete()

Este exemplo mostra duas maneiras de excluir o serviço TestService. O primeiro comando usa a opção de exclusão de Sc.exe. O segundo comando usa o método Delete dos objetos Win32_Service que Get-CimInstance retorna.

Parâmetros

-BinaryPathName

Especifica o caminho do arquivo executável para o serviço. Este parâmetro é obrigatório.

O caminho totalmente qualificado para o arquivo binário de serviço. Se o caminho contiver um espaço, ele deverá ser citado para que ele seja interpretado corretamente. Por exemplo, D:\my share\myservice.exe deve ser especificado como '"D:\my share\myservice.exe"'.

O caminho também pode incluir argumentos para um serviço de início automático. Por exemplo, '"D:\my share\myservice.exe" arg1 arg2'. Esses argumentos são passados para o ponto de entrada de serviço.

Para obter mais informações, consulte o parâmetro lpBinaryPathName da API CreateServiceW.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:1
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:cf

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Credential

Especifica a conta usada pelo serviço como a Conta de logon de serviço.

Digite um nome de usuário, como User01 ou Domain01\User01, ou insira um objeto PSCredential, como um gerado pelo cmdlet Get-Credential. Se você digitar um nome de usuário, esse cmdlet solicitará uma senha.

As credenciais são armazenadas em um objeto PSCredential e a senha é armazenada como um SecureString.

Observação

Para obter mais informações sobre a proteção de dados do SecureString, consulte Quão seguro é o SecureString?.

Propriedades do parâmetro

Tipo:PSCredential
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-DependsOn

Especifica os nomes de outros serviços dos quais o novo serviço depende. Para inserir vários nomes de serviço, use uma vírgula para separar os nomes.

Propriedades do parâmetro

Tipo:

String[]

Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Description

Especifica uma descrição do serviço.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-DisplayName

Especifica um nome de exibição para o serviço.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-Name

Especifica o nome do serviço. Este parâmetro é obrigatório.

Propriedades do parâmetro

Tipo:String
Valor padrão:None
Dá suporte a curingas:False
DontShow:False
Aliases:NomeDoServiço

Conjuntos de parâmetros

(All)
Cargo:0
Obrigatório:True
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-StartupType

Define o tipo de inicialização do serviço. Os valores aceitáveis para este parâmetro são:

  • Automático – O serviço é iniciado ou foi iniciado pelo sistema operacional, na inicialização do sistema. Se um serviço iniciado automaticamente depender de um serviço iniciado manualmente, o serviço iniciado manualmente também será iniciado automaticamente na inicialização do sistema.
  • Desabilitado – o serviço está desabilitado e não pode ser iniciado por um usuário ou aplicativo.
  • Manual – o serviço é iniciado apenas manualmente, por um usuário, usando o Service Control Manager ou por um aplicativo.
  • inicialização – indica que o serviço é um driver de dispositivo iniciado pelo carregador do sistema. Esse valor é válido apenas para drivers de dispositivo.
  • System – Indica que o serviço é um driver de dispositivo iniciado pela função 'IOInitSystem()'. Esse valor é válido apenas para drivers de dispositivo.

O valor padrão é Automático.

Propriedades do parâmetro

Tipo:ServiceStartMode
Valor padrão:Automatic
Valores aceitos:Boot, System, Automatic, Manual, Disabled
Dá suporte a curingas:False
DontShow:False

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Propriedades do parâmetro

Tipo:SwitchParameter
Valor padrão:False
Dá suporte a curingas:False
DontShow:False
Aliases:wi

Conjuntos de parâmetros

(All)
Cargo:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline pelo nome da propriedade:False
Valor dos argumentos restantes:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

None

Não é possível transferir objetos para esse cmdlet.

Saídas

ServiceController

Esse cmdlet retorna um objeto que representa o novo serviço.

Observações

Para executar esse cmdlet, inicie o PowerShell usando a opção Executar como administrador.

Para excluir um serviço, use Sc.exeou use o cmdlet Get-CimInstance para obter o objeto Win32_Service que representa o serviço e, em seguida, use o método Delete para excluir o serviço. O objeto que Get-Service retorna não tem um método de exclusão.