Freigeben über


Tabelle „ServiceControl“

Die Tabelle „ServiceControl“ wird verwendet, um installierte oder nicht installierte Dienste festzulegen.

Hinweis

Dienste, die eine Assembly im globalen Assemblycache (GAC) voraussetzen, können nicht mithilfe der Tabellen ServiceInstall und „ServiceControl“ installiert oder gestartet werden. Wenn Sie einen Dienst starten müssen, der von einer Assembly im GAC abhängt, müssen Sie eine benutzerdefinierte Aktion, die in der Sequenz hinter der InstallFinalize-Aktion steht, oder eine benutzerdefinierte Commitaktion verwenden. Weitere Informationen zum Installieren von Assemblys im GAC finden Sie unter Installation von Assemblys im globalen Assemblycache.

 

Die Tabelle „ServiceControl“ umfasst die folgenden Spalten.

Spalte Typ Schlüssel Nullwerte zulässig
ServiceControl Identifier J N
Name Formatted N N
Ereignis Integer N N
Argumente Formatted N J
Warten Integer N J
Component_ Identifier N N

 

Spalten

ServiceControl

Dies ist der Primärschlüssel dieser Tabelle.

Name

Diese Spalte ist die Zeichenfolge, die den Dienst benennt. Diese Spalte kann verwendet werden, um einen Dienst zu anzugeben, der nicht installiert ist.

Event

Diese Spalte enthält die Vorgänge, die für den benannten Dienst ausgeführt werden sollen. Beachten Sie, dass beim Beenden eines Diensts auch alle Dienste beendet werden, die von diesem Dienst abhängen. Wenn ein derzeit ausgeführter Dienst gelöscht wird, beendet das Installationsprogramm den Dienst.

Die Werte in diesem Feld sind Bitfelder, die zu einem einzelnen Wert zusammengefasst werden können, der mehrere Vorgänge darstellt.

Die folgenden Werte werden nur während einer Installation verwendet.

Konstant Hexadezimal Decimal BESCHREIBUNG
msidbServiceControlEventStart 0x001 1 Startet den Dienst während der StartServices-Aktion.
msidbServiceControlEventStop 0x002 2 Beendet den Dienst während der StopServices-Aktion.
(none) 0x004 4 <reserved>
msidbServiceControlEventDelete 0x008 8 Löscht den Dienst während der DeleteServices-Aktion.

 

Die folgenden Werte werden nur während einer Deinstallation verwendet.

Konstant Hexadezimal Decimal BESCHREIBUNG
msidbServiceControlEventUninstallStart 0x010 16 Startet den Dienst während der StartServices-Aktion.
msidbServiceControlEventUninstallStop 0x020 32 Beendet den Dienst während der StopServices-Aktion.
(none) 0x040 64 <reserved>
msidbServiceControlEventUninstallDelete 0x080 128 Löscht den Dienst während der DeleteServices-Aktion.

 

Arguments (Argumente)

Eine Liste von Argumenten zum Starten von Diensten. Die Argumente sind durch NULL-Zeichen [~] getrennt. Beispielsweise wird die Liste der Argumente One, Two und Three als „One[~]Two[~]Three“ aufgelistet.

Wait

Wenn dieses Feld auf NULL belassen oder auf den Wert „1“ festgelegt wird, wartet das Installationsprogramm maximal 30 Sekunden auf den Abschluss des Diensts, bevor es fortfährt. Die Wartezeit kann verwendet werden, um zusätzliche Zeit zu gewähren, bis ein kritisches Ereignis einen Fehler zurückgibt. Der Wert „0“ in diesem Feld bedeutet, dass nur gewartet wird, bis der Dienststeuerungs-Manager (SCM) meldet, dass sich dieser Dienst in einem ausstehenden Zustand befindet, bevor die Installation fortgesetzt wird.

Component_

Externer Schlüssel für Spalte 1 der Komponententabelle.

Bemerkungen

Die Aktionen StartServices, StopServices und DeleteServices in Sequenztabellen verarbeiten die Informationen in dieser Tabelle. Informationen zur Verwendung von Sequenztabellen finden Sie unter Verwenden einer Sequenztabelle.

Verwenden Sie die Spalte „Name“, um Dienste zu starten, zu beenden oder zu löschen, die während der Installation ersetzt werden oder die von einem neuen Dienst abhängig sind, der installiert wird. Wenn Sie beispielsweise „MyService“ in die Spalte „ServiceControl“ eingeben, kann dieser Dienst in der Spalte „Component_“ an MyComponent gebunden werden. Wenn das Bitfeld in der Spalte „Event“ auf den Start während der Installation festgelegt ist, startet das Installationsprogramm MyService bei der Installation von MyComponent.

Überprüfen

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69