< Back
New-Service
Post
NAME New-Service
SYNOPSIS
Creates a new Windows service.
SYNTAX
New-Service [-Name] <String> [-BinaryPathName] <String> [-Confirm] [-Credential <PSCredential>] [-DependsOn <String[]>] [-Description <String>]
[-DisplayName <String>] [-StartupType {Boot | System | Automatic | Manual | Disabled}] [-WhatIf] [<CommonParameters>]
DESCRIPTION
The New-Service cmdlet creates a new entry for a Windows service in the registry and in the service database. A new service requires an executable
file that runs during the service.
The parameters of this cmdlet let you set the display name, description, startup type, and dependencies of the service.
PARAMETERS
-BinaryPathName <String>
Specifies the path of the executable file for the service. This parameter is required.
Required? true
Position? 1
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Confirm [<SwitchParameter>]
Prompts you for confirmation before running the cmdlet.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Credential <PSCredential>
Specifies a user account that has permission to perform this action.
Type a user name, such as User01 or Domain01\\User01, or enter a PSCredential object, such as one generated by the Get-Credential cmdlet. If
you type a user name, this cmdlet prompts you for a password.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-DependsOn <String[]>
Specifies the names of other services upon which the new service depends. To enter multiple service names, use a comma to separate the names.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Description <String>
Specifies a description of the service.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-DisplayName <String>
Specifies a display name for the service.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Name <String>
Specifies the name of the service. This parameter is required.
Required? true
Position? 0
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-StartupType <ServiceStartMode>
Sets the startup type of the service. The acceptable values for this parameter are:
- Manual. The service is started only manually, by a user, using the Service Control Manager, or by an application. - Automatic. The service
is started or was started by the operating system, at system start-up. If an automatically started service depends on a manually started
service, the manually started service is also started automatically at system startup. - Disabled. The service is disabled and cannot be
started by a user or application.
The default value is Automatic.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-WhatIf [<SwitchParameter>]
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
None
You cannot pipe input to this cmdlet.
OUTPUTS
System.ServiceProcess.ServiceController
This cmdlet returns an object that represents the new service.
NOTES
* To run this cmdlet on Windows Vista and later versions of the Windows operating system, start Windows PowerShell by using the Run as
administrator option. To delete a service, use Sc.exe, or use the Get-WmiObject cmdlet to get the Win32_Service object that represents the
service and then use the Delete * method to delete the service. The object that Get-Service returns does not have a delete method.
Example 1: Create a service
PS C:\\>New-Service -Name "TestService" -BinaryPathName "C:\\WINDOWS\\System32\\svchost.exe -k netsvcs"
This command creates a service named TestService.
Example 2: Create a service that includes description, startup type, and display name
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."
This command creates a service named TestService. It uses the parameters of New-Service to specify a description, startup type, and display name
for the new service.
Example 3: View the new service
PS C:\\>Get-WmiObject win32_service -Filter "name='testservice'"
ExitCode : 0
Name : testservice
ProcessId : 0
StartMode : Auto
State : Stopped
Status : OK
This command uses Get-WmiObject to get the Win32_Service object for the new service. This object includes the start mode and the service
description.
Example 4: Delete a service
PS C:\\>sc.exe delete TestService
- or -
PS C:\\> (Get-WmiObject win32_service -Filter "name='TestService'").delete()
This example shows two ways to delete the TestService service. The first command uses the delete option of Sc.exe. The second command uses the
Delete method of the Win32_Service objects that Get-WmiObject returns.
RELATED LINKS
Online Version: http://go.microsoft.com/fwlink/?LinkId=821608
Get-Service
Restart-Service
Resume-Service
Set-Service
Restart-Service
Stop-Service
Suspend-Service
SYNOPSIS
Creates a new Windows service.
SYNTAX
New-Service [-Name] <String> [-BinaryPathName] <String> [-Confirm] [-Credential <PSCredential>] [-DependsOn <String[]>] [-Description <String>]
[-DisplayName <String>] [-StartupType {Boot | System | Automatic | Manual | Disabled}] [-WhatIf] [<CommonParameters>]
DESCRIPTION
The New-Service cmdlet creates a new entry for a Windows service in the registry and in the service database. A new service requires an executable
file that runs during the service.
The parameters of this cmdlet let you set the display name, description, startup type, and dependencies of the service.
PARAMETERS
-BinaryPathName <String>
Specifies the path of the executable file for the service. This parameter is required.
Required? true
Position? 1
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Confirm [<SwitchParameter>]
Prompts you for confirmation before running the cmdlet.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
-Credential <PSCredential>
Specifies a user account that has permission to perform this action.
Type a user name, such as User01 or Domain01\\User01, or enter a PSCredential object, such as one generated by the Get-Credential cmdlet. If
you type a user name, this cmdlet prompts you for a password.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-DependsOn <String[]>
Specifies the names of other services upon which the new service depends. To enter multiple service names, use a comma to separate the names.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Description <String>
Specifies a description of the service.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-DisplayName <String>
Specifies a display name for the service.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-Name <String>
Specifies the name of the service. This parameter is required.
Required? true
Position? 0
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-StartupType <ServiceStartMode>
Sets the startup type of the service. The acceptable values for this parameter are:
- Manual. The service is started only manually, by a user, using the Service Control Manager, or by an application. - Automatic. The service
is started or was started by the operating system, at system start-up. If an automatically started service depends on a manually started
service, the manually started service is also started automatically at system startup. - Disabled. The service is disabled and cannot be
started by a user or application.
The default value is Automatic.
Required? false
Position? named
Default value None
Accept pipeline input? False
Accept wildcard characters? false
-WhatIf [<SwitchParameter>]
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Required? false
Position? named
Default value False
Accept pipeline input? False
Accept wildcard characters? false
<CommonParameters>
This cmdlet supports the common parameters: Verbose, Debug,
ErrorAction, ErrorVariable, WarningAction, WarningVariable,
OutBuffer, PipelineVariable, and OutVariable. For more information, see
about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
INPUTS
None
You cannot pipe input to this cmdlet.
OUTPUTS
System.ServiceProcess.ServiceController
This cmdlet returns an object that represents the new service.
NOTES
* To run this cmdlet on Windows Vista and later versions of the Windows operating system, start Windows PowerShell by using the Run as
administrator option. To delete a service, use Sc.exe, or use the Get-WmiObject cmdlet to get the Win32_Service object that represents the
service and then use the Delete * method to delete the service. The object that Get-Service returns does not have a delete method.
Example 1: Create a service
PS C:\\>New-Service -Name "TestService" -BinaryPathName "C:\\WINDOWS\\System32\\svchost.exe -k netsvcs"
This command creates a service named TestService.
Example 2: Create a service that includes description, startup type, and display name
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."
This command creates a service named TestService. It uses the parameters of New-Service to specify a description, startup type, and display name
for the new service.
Example 3: View the new service
PS C:\\>Get-WmiObject win32_service -Filter "name='testservice'"
ExitCode : 0
Name : testservice
ProcessId : 0
StartMode : Auto
State : Stopped
Status : OK
This command uses Get-WmiObject to get the Win32_Service object for the new service. This object includes the start mode and the service
description.
Example 4: Delete a service
PS C:\\>sc.exe delete TestService
- or -
PS C:\\> (Get-WmiObject win32_service -Filter "name='TestService'").delete()
This example shows two ways to delete the TestService service. The first command uses the delete option of Sc.exe. The second command uses the
Delete method of the Win32_Service objects that Get-WmiObject returns.
RELATED LINKS
Online Version: http://go.microsoft.com/fwlink/?LinkId=821608
Get-Service
Restart-Service
Resume-Service
Set-Service
Restart-Service
Stop-Service
Suspend-Service