共用方式為


建立服務

描述

此範例示範如何使用 Service 資源來確保服務存在且正在執行。

將 [確定] 設定為 Present[名稱] 設定 Service1 為 ,並將[路徑] 設定 C:\FilePath\MyServiceExecutable.exe 為 時,如果資源 Service1 不存在 MyServiceExecutable.exe ,則會建立它做為可執行檔,然後啟動它。

如果 Service1 存在但未執行,資源就會啟動它。

使用 Invoke-DscResource

此腳本示範如何將資源與 Cmdlet 搭配 Invoke-DscResource 使用 Service ,以確保 Service1 服務以 MyServiceExecutable.exe 作為可執行檔並正在執行。

[CmdletBinding()]
param()

begin {
    $SharedParameters = @{
        Name       = 'Service'
        ModuleName = 'PSDscResource'
        Properties = @{
            Name   = 'Service1'
            Ensure = 'Present'
            Path   = 'C:\FilePath\MyServiceExecutable.exe'
        }
    }

    $NonGetProperties = @(
        'Ensure'
        'Path'
    )
}

process {
    $TestResult = Invoke-DscResource -Method Test @SharedParameters

    if ($TestResult.InDesiredState) {
        $QueryParameters = $SharedParameters.Clone()

        foreach ($Property in $NonGetProperties) {
            $QueryParameters.Properties.Remove($Property)
        }

        Invoke-DscResource -Method Get @QueryParameters
    } else {
        Invoke-DscResource -Method Set @SharedParameters
    }
}

使用組態

此程式碼片段示範如何使用資源區塊來定義 , ConfigurationService 以確保 Service1 服務會以 MyServiceExecutable.exe 作為可執行檔並正在執行。

Configuration Create {
    Import-DscResource -ModuleName 'PSDscResources'

    Node localhost {
        Service ExampleService {
            Name   = 'Service1'
            Ensure = 'Present'
            Path   = 'C:\FilePath\MyServiceExecutable.exe'
        }
    }
}