Freigeben über


ServiceControl-Tabelle

Die ServiceControl-Tabelle wird verwendet, um installierte oder deinstallierte Dienste zu steuern.

Anmerkung

Dienste, die auf das Vorhandensein einer Assembly im globalen Assemblycache (GAC) angewiesen sind, können nicht installiert oder mit der Verwendung der ServiceInstall-- und ServiceControl-Tabellen gestartet werden. Wenn Sie einen Dienst starten müssen, der von einer Assembly im GAC abhängt, müssen Sie eine benutzerdefinierte Aktion verwenden, die nach der InstallFinalize-Aktion oder einer commit benutzerdefinierte Aktion. Informationen zum Installieren von Assemblys im GAC finden Sie unter Installation von Assemblys in den globalen Assemblycache.

 

Die Tabelle "ServiceControl" enthält die folgenden Spalten.

Spalte Art Schlüssel Nullable
ServiceControl Bezeichner Y N
Name formatierte N N
Ereignis ganze Zahl N N
Argumente formatierte N Y
Warte ganze Zahl N Y
Bestandteil_ Bezeichner 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 steuern, der nicht installiert ist.

-Ereignis

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, die von diesem Dienst abhängen, beendet werden. Beim Löschen eines diensts, der ausgeführt wird, beendet das Installationsprogramm den Dienst.

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

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

Konstante Hexadezimal Dezimal Beschreibung
msidbServiceControlEventStart- 0x001 1 Startet den Dienst während der StartServices-Aktion.
msidbServiceControlEventStop- 0x002 2 Beendet den Dienst während der StopServices-Aktion.
(keine) 0x004 4 <reservierten>
msidbServiceControlEventDelete 0x008 8 Löscht den Dienst während der DeleteServices-Aktion.

 

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

Konstante Hexadezimal Dezimal Beschreibung
msidbServiceControlEventUninstallStart- 0x010 16 Startet den Dienst während der StartServices-Aktion.
msidbServiceControlEventUninstallStop- 0x020 32 Beendet den Dienst während der StopServices-Aktion.
(keine) 0x040 64 <reservierten>
msidbServiceControlEventUninstallDelete 0x080 128 Löscht den Dienst während der DeleteServices-Aktion.

 

Argumente

Eine Liste der Argumente für das Starten von Diensten. Die Argumente werden durch Nullzeichen [~] getrennt. Die Liste der Argumente "Eins", "Zwei" und "Drei" wird z. B. als "Ein[~]Zwei[~]Drei" aufgeführt.

Warten

Wenn Sie dieses Feld NULL verlassen oder einen Wert von 1 eingeben, wartet das Installationsprogramm maximal 30 Sekunden, bis der Dienst abgeschlossen ist, bevor er fortfahren kann. Die Wartezeit kann verwendet werden, um zusätzliche Zeit für ein kritisches Ereignis zuzulassen, um einen Fehler zurückzugeben. Ein Wert von 0 in diesem Feld bedeutet, dass nur gewartet wird, bis der Dienststeuerungs-Manager (SCM) meldet, dass dieser Dienst in einem ausstehenden Zustand ist, bevor er mit der Installation fortsetzt.

Component_

Externer Schlüssel zur Spalte 1 der Komponententabelle.

Bemerkungen

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

Verwenden Sie die Spalte "Name", um Dienste zu starten, zu beenden oder zu löschen, die durch die Installation ersetzt werden oder von einem neuen Dienst abhängig sind, der installiert wird. Die Eingabe von "MyService" in die Spalte "ServiceControl" kann diesen Dienst beispielsweise in der Spalte Component_ mit "MyComponent" verknüpfen. Wenn das Bitfeld in der Spalte "Ereignis" beim Installieren für den Start festgelegt ist, startet das Installationsprogramm MyService bei der Installation von MyComponent.

Validierung

ICE03-
ICE06-
ICE32-
ICE45-
ICE46-
ICE69-