New-Service
新しい Windows サービスを作成します。
構文
Default (既定)
New-Service
[-Name] <String>
[-BinaryPathName] <String>
[-DisplayName <String>]
[-Description <String>]
[-StartupType <ServiceStartMode>]
[-Credential <PSCredential>]
[-DependsOn <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
New-Service コマンドレットは、レジストリとサービス データベースに Windows サービスの新しいエントリを作成します。 新しいサービスには、サービス中に実行される実行可能ファイルが必要です。
このコマンドレットのパラメーターを使用すると、サービスの表示名、説明、スタートアップの種類、依存関係を設定できます。
例
例 1: サービスを作成する
PS C:\> New-Service -Name "TestService" -BinaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs"
このコマンドは、TestService という名前のサービスを作成します。
例 2: 説明、スタートアップの種類、表示名を含むサービスを作成する
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."
このコマンドは、TestService という名前のサービスを作成します。 New-Service のパラメーターを使用して、新しいサービスの説明、スタートアップの種類、および表示名を指定します。
例 3: 新しいサービスを表示する
PS C:\> Get-WmiObject win32_service -Filter "name='testservice'"
ExitCode : 0
Name : testservice
ProcessId : 0
StartMode : Auto
State : Stopped
Status : OK
このコマンドでは 、Get-WmiObject を使用して、新しいサービスの Win32_Service オブジェクトを取得します。 このオブジェクトには、開始モードとサービスの説明が含まれます。
例 4: サービスを削除する
PS C:\> sc.exe delete TestService
- or -
PS C:\> (Get-WmiObject win32_service -Filter "name='TestService'").delete()
この例では、TestService サービスを削除する 2 つの方法を示します。 最初のコマンドは、delete オプション Sc.exeを使用します。 2 番目のコマンドでは、Get-WmiObject が返す Win32_Service オブジェクトの Delete メソッドを使用します。
パラメーター
-BinaryPathName
サービスの実行可能ファイルのパスを指定します。 このパラメーターは必須です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 1 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | cf |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Credential
サービス ログオン アカウントとしてサービスによって使用されるアカウントを指定します。
User01 や Domain01\User01 などのユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットによって生成されたものなど) を入力します。 ユーザー名を入力すると、このコマンドレットによってパスワードの入力が求められます。
パラメーターのプロパティ
| 型: | PSCredential |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-DependsOn
新しいサービスが依存する他のサービスの名前を指定します。 複数のサービス名を入力するには、コンマを使用して名前を区切ります。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Description
サービスの説明を指定します。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-DisplayName
サービスの表示名を指定します。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Name
サービスの名前を指定します。 このパラメーターは必須です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | サービス名 |
パラメーター セット
(All)
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-StartupType
サービスのスタートアップの種類を設定します。 このパラメーターに使用できる値は次のとおりです。
- 手動。 サービスは、ユーザー、Service Control Manager、またはアプリケーションによってのみ手動で開始されます。
- 自動 サービスは、システムの起動時にオペレーティング システムによって開始されるか、または開始されます。 自動開始サービスが手動で開始されたサービスに依存している場合、手動で開始されたサービスもシステムの起動時に自動的に開始されます。
- 無効。 サービスは無効になっており、ユーザーまたはアプリケーションは開始できません。
デフォルト値は [自動] です。
パラメーターのプロパティ
| 型: | ServiceStartMode |
| 規定値: | None |
| 指定可能な値: | Automatic, Manual, Disabled |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | ウィスコンシン |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
None
パイプを使用してこのコマンドレットに入力を渡すことはできません。
出力
ServiceController
このコマンドレットは、新しいサービスを表すオブジェクトを返します。
メモ
- Windows Vista 以降のバージョンの Windows オペレーティング システムでこのコマンドレットを実行するには、[管理者として実行] オプションを使用して Windows PowerShell を起動します。
- サービスを削除するには、Sc.exeを使用するか、Get-WmiObject コマンドレットを使用してサービスを表す Win32_Service オブジェクトを取得し、 Delete メソッドを使用してサービスを削除します。 Get-Service が返すオブジェクトには、delete メソッドがありません。