次の方法で共有


ServiceControl テーブル

ServiceControl テーブルは、インストール/アンインストールされたサービスを制御するために使用されます。

Note

グローバル アセンブリ キャッシュ (GAC) にあるアセンブリの存在に依存するサービスは、ServiceInstall テーブルと ServiceControl テーブルを使用するインストールまたは開始はできません。 GAC のアセンブリに依存するサービスを開始する必要がある場合は、InstallFinalize アクションまたはコミット カスタム アクションの後にシーケンス処理されたカスタム アクションを使用する必要があります。 アセンブリの GAC へのインストールに関する詳細については、「アセンブリのグローバル アセンブリ キャッシュへのインストール」を参照してください。

 

ServiceControl テーブルには次の列があります。

Column 種類 キー Nullable
ServiceControl Identifier Y N
名前 Formatted N N
イベント 整数 N N
引数 Formatted N Y
Wait 整数 N Y
Component_ Identifier N N

 

[列]

ServiceControl

このテーブルの主キーです。

Name

この列はサービスに名前を付ける文字列です。 使用すると、インストールされていないサービスを制御できます。

Event

この列には、名前付きサービスで実行される操作が含まれています。 サービスを停止すると、そのサービスに依存するすべてのサービスも停止されることにご注意ください。 実行中のサービスを削除すると、インストーラーによってサービスが停止されます。

このフィールドの値は、複数の操作を表す 1 つの値に結合できるビット フィールドです。

次の値はインストール中にのみ使用されます。

一定 16 進数 Decimal (10 進数型) 説明
msidbServiceControlEventStart 0x001 1 StartServices アクション中にサービスを開始します。
msidbServiceControlEventStop 0x002 2 StopServices アクション中にサービスを停止します。
(なし) 0x004 4 <reserved>
msidbServiceControlEventDelete 0x008 8 DeleteServices アクション中にサービスを削除します。

 

次の値はアンインストール中にのみ使用されます。

一定 16 進数 Decimal (10 進数型) 説明
msidbServiceControlEventUninstallStart 0x010 16 StartServices アクション中にサービスを開始します。
msidbServiceControlEventUninstallStop 0x020 32 StopServices アクション中にサービスを停止します。
(なし) 0x040 64 <reserved>
msidbServiceControlEventUninstallDelete 0x080 128 DeleteServices アクション中にサービスを削除します。

 

Arguments

サービスを開始するための引数リスト。 引数は null 文字 [~] で区切られます。 たとえば、引数 One、Two、Three のリストは One[~]Two[~]Three としてリストされます。

Wait

このフィールドを null のままにするか値 1 を入力すると、インストーラーはサービスが完了するまで最大 30 秒待機してから続行します。 この間に、重大なイベントが失敗エラーを返す時間を追加できます。 このフィールドの値が 0 の場合は、サービス制御マネージャー (SCM) がこのサービスは保留中の状態であることを報告するまで待機してからインストールを続行することを意味します。

Component_

Component テーブルの列 1 に対する外部キー。

解説

シーケンス テーブルStartServicesStopServicesDeleteServices アクションは、このテーブルの情報を処理します。 シーケンス テーブルの使用については、「Sequence テーブルの使用」を参照してください。

Name 列を使用して、インストールによって置き換えられるサービスまたはインストールされている新しいサービスに依存するサービスを開始、停止、または削除します。 たとえば、「MyService」と ServiceControl 列に入力すると、このサービスを Component_ 列の MyComponent に関連付けられます。 インストール中に Event 列のビット フィールドが開始するように設定されている場合、インストーラーは MyService を MyComponent のインストール時に起動します。

検証

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69