Создает новую службу Windows.

Синтаксис

New-Service [-Name] <string> [-BinaryPathName] <string> [-Credential <PSCredential>] [-DependsOn <string[]>] [-Description <string>] [-DisplayName <string>] [-StartupType {<Automatic> | <Manual> | <Disabled>}] [-Confirm] [-WhatIf] [<CommonParameters>]

Описание

Командлет New-Service создает в реестре и базе данных служб новую запись службы Windows. Для новой службы требуется задать исполняемый файл, который будет выполняться во время работы службы.

Параметры этого командлета позволяют задать отображаемое имя, описание, тип запуска и зависимости службы.

Параметры

-BinaryPathName <string>

Задает путь к исполняемому файлу службы. Это обязательный параметр.

Обязательно?

true

Позиция?

2

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Credential <PSCredential>

Задает учетную запись пользователя, который располагает разрешением для выполнения этого действия. Введите имя пользователя, например "User01" или "Domain01\User01". Или укажите объект PSCredential, например один из объектов, возвращенных командлетом Get-Credential. При вводе имени пользователя система запросит пароль.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-DependsOn <string[]>

Задает имена других служб, от которых зависит новая служба. При вводе нескольких имен служб необходимо разделять их запятыми.

Обязательно?

false

Позиция?

named

Значение по умолчанию

нет

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Description <string>

Задает описание службы.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-DisplayName <string>

Задает отображаемое имя службы.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Name <string>

Задает имя службы. Это обязательный параметр.

Обязательно?

true

Позиция?

1

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-StartupType <ServiceStartMode>

Задает тип запуска службы. По умолчанию используется значение "Automatic".

Допустимые значения:

-- Manual: запуск службы осуществляется только вручную — пользователем (с помощью диспетчера служб) или приложением.

-- Automatic: запуск службы осуществляется (или уже осуществлен) операционной системой при ее запуске. Если автоматически запускаемая службы зависит от службы, запускаемой вручную, последняя также запускается автоматически при запуске системы.

-- Disabled: служба отключена и не может быть запущена ни пользователем, ни приложением.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Automatic

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-Confirm

Запрашивает подтверждение перед выполнением команды.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

-WhatIf

Описывает, что произойдет при выполнении команды, без ее фактического выполнения.

Обязательно?

false

Позиция?

named

Значение по умолчанию

Принимать входные данные из конвейера?

false

Принимать подстановочные знаки?

false

<CommonParameters>

Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.

Ввод и вывод

Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.

Входные данные

Нет

Передать входные данные этому командлету по конвейеру невозможно.

Выходные данные

System.ServiceProcess.ServiceController

Командлет New-Service возвращает объект, представляющий новую службу.

Примечания

Чтобы использовать этот командлет в Windows Vista и более поздних версиях Windows, необходимо запускать Windows PowerShell командой "Запуск от имени администратора".

Пример 1

C:\PS>new-service -name TestService -binaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs"

Описание
-----------
Эта команда создает новую службу с именем "TestService".






Пример 2

C:\PS>new-service -name TestService -path "C:\WINDOWS\System32\svchost.exe -k netsvcs" -dependson NetLogon -displayName "Test Service" -StartupType Manual -Description "This is a test service."

Описание
-----------
Эта команда создает новую службу с именем "TestService". В ней используются параметры командлета New-Service для задания описания, типа запуска и отображаемого имени новой службы.

Для задания параметра BinaryPathName в первой команде используется псевдоним параметра Path. Кроме того, можно использовать псевдоним "-bpn".






Пример 3

C:\PS>get-wmiobject win32_service -filter "name='testservice'"

ExitCode  : 0
Name	: testservice
ProcessId : 0
StartMode : Auto
State	 : Stopped
Status	: OK

Описание
-----------
Эта команда с помощью параметра Get-WmiObject получает объект Win32_Service новой службы. Этот объект включает информацию о режиме запуска и описание службы.






См. также