forked from dsccommunity/xPSDesiredStateConfiguration
-
Notifications
You must be signed in to change notification settings - Fork 0
/
xService_CreateServiceConfig.ps1
68 lines (58 loc) · 1.91 KB
/
xService_CreateServiceConfig.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<#PSScriptInfo
.VERSION 1.0.1
.GUID 22b2e2d1-76cd-4f4c-b952-ec3b574b9751
.AUTHOR Microsoft Corporation
.COMPANYNAME Microsoft Corporation
.COPYRIGHT
.TAGS DSCConfiguration
.LICENSEURI https://github.com/PowerShell/xPSDesiredStateConfiguration/blob/master/LICENSE
.PROJECTURI https://github.com/PowerShell/xPSDesiredStateConfiguration
.ICONURI
.EXTERNALMODULEDEPENDENCIES
.REQUIREDSCRIPTS
.EXTERNALSCRIPTDEPENDENCIES
.RELEASENOTES First version.
.PRIVATEDATA 2016-Datacenter,2016-Datacenter-Server-Core
#>
#Requires -module 'xPSDesiredStateConfiguration'
<#
.SYNOPSIS
Configuration that creates a new Windows service from an executable.
.DESCRIPTION
Configuration that creates a new Windows service from an executable.
The executable must be built to run as a Windows service.
.PARAMETER Path
The path to the executable for the Windows service.
.PARAMETER Name
The name of the Windows service to be created.
.EXAMPLE
xService_CreateServiceConfig -Path 'C:\FilePath\MyServiceExecutable.exe' -Name 'Service1'
Compiles a configuration that creates a new service with the name Service1
using the executable path 'C:\FilePath\MyServiceExecutable.exe'.
If the service with the name Service1 already exists and the executable
path is different, then the executable will be changed for the service.
The service is started by default if it is not running already.
#>
Configuration xService_CreateServiceConfig
{
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter(Mandatory = $true)]
[System.String]
$Name
)
Import-DscResource -ModuleName 'xPSDesiredStateConfiguration'
Node localhost
{
xService 'CreateService'
{
Name = $Name
Ensure = 'Present'
Path = $Path
}
}
}