Create-Methode der Win32 _ SystemDriver-Klasse

Die Create WMI-Klassenmethode erstellt einen neuen Dienst, der vom Systemtreiber verwaltet wird. Der Win32 _ LoadOrderGroup-Parameter stellt eine Gruppierung von Systemdiensten dar, die Ausführungsabhängigkeiten definieren. Die Dienste müssen in der von der Lastauftragsgruppe angegebenen Reihenfolge initiiert werden, da die Dienste voneinander abhängig sind. Diese abhängigen Dienste erfordern das Vorhandensein der voraussenten Dienste, damit sie ordnungsgemäß funktionieren.

In diesem Thema wird Managed Object Format -Syntax (MOF) verwendet. Weitere Informationen zur Verwendung dieser Methode finden Sie unter Aufrufen einer Methode.

Syntax

uint32 Create(
  [in] string  Name,
  [in] string  DisplayName,
  [in] string  PathName,
  [in] uint8   ServiceType,
  [in] uint8   ErrorControl,
  [in] string  StartMode,
  [in] boolean DesktopInteract,
  [in] string  StartName,
  [in] string  StartPassword,
  [in] string  LoadOrderGroup,
  [in] string  LoadOrderGroupDependencies[],
  [in] string  ServiceDependencies[]
);

Parameter

Name [ In]

Name des Diensts, der in der Create-Methode installiert werden soll. Die maximale Zeichenfolgenlänge beträgt 256 Zeichen. Die Service Control Manager-Datenbank behält die Groß-/Kleinschreibung der Zeichen bei, bei Dienstnamenvergleichen wird die Groß-/Kleinschreibung jedoch immer nicht beachtet. Schrägstriche (/) und doppelte schräge Schrägstriche \ () sind ungültige Dienstnamenzeichen.

DisplayName [ In]

Anzeigename des Diensts. Die maximale Länge der Zeichenfolge beträgt 256 Zeichen. Der Name wird im Dienststeuerungs-Manager beibehalten. Bei DisplayName-Vergleichen wird die Groß-/Kleinschreibung immer nicht beachtet.

Einschränkungen: Akzeptiert den gleichen Wert wie der Name-Parameter.

Beispiel: "Atdisk".

PathName [ In]

Vollqualifizierter Pfad zur ausführbaren Datei, die den Dienst implementiert.

Beispiel: \ "SystemRoot \ \ System32-Treiber \afd.sys".

ServiceType [ In]

Typ der Dienste, die für die Prozesse bereitgestellt werden, die sie aufrufen.

1 (0x1)

Kerneltreiber

2 (0x2)

Dateisystemtreiber

4 (0x4)

Adapter

8 (0x8)

Recognizer Driver

16 (0x10)

Eigener Prozess

32 (0x20)

Freigabeprozess

256 (0x100)

Interaktiver Prozess

ErrorControl [ In]

Schweregrad des Fehlers, wenn die Create-Methode nicht gestartet werden kann. Dieser Wert gibt die Aktion an, die vom Startprogramm ausgeführt wird, wenn ein Fehler auftritt. Alle Fehler werden vom System protokolliert.

0

"Ignorieren"

Der Benutzer wird nicht benachrichtigt.

1

"Normal"

Der Benutzer wird benachrichtigt.

2

"Schwerwiegend"

Das System wird mit der letzten bekannten, fehlerfreien Konfiguration neu gestartet.

3

"Kritisch"

Das System versucht, mit einer guten Konfiguration zu beginnen.

StartMode [ In]

Startmodus des Windows Basisdiensts.

Booten

Vom Betriebssystemlader gestarteter Gerätetreiber. Dieses Wert ist nur für Treiberdienste gültig.

System

Der Gerätetreiber wurde durch den Initialisierungsprozess des Betriebssystems gestartet. Dieses Wert ist nur für Treiberdienste gültig.

Automatisch

Der Dienst wird automatisch vom Dienststeuerungs-Manager während des Systemstarts gestartet.

Manuell

Der Dienst, der vom Dienststeuerungs-Manager gestartet werden soll, wenn ein Prozess die StartService-Methode aufruft.

Deaktiviert

Dienst, der nicht mehr gestartet werden kann.

DesktopInteract [ In]

True gibt an, dass der Dienst die Fenster auf dem Desktop erstellen oder mit ihnen kommunizieren kann.

StartName [ In]

Kontoname, unter dem der Dienst ausgeführt wird. Je nach Diensttyp kann der Kontoname das Format DomainName Username oder \ UpN (UpN) (Benutzerprinzipalname ( ) Username@DomainName haben. Der Dienstprozess wird mit einer dieser beiden Formen protokolliert, wenn er ausgeführt wird. Wenn das Konto zur integrierten Domäne gehört, . \ Der Benutzername kann angegeben werden. Wenn NULL angegeben wird, wird der Dienst als LocalSystem-Konto angemeldet. Für Einen Kernel oder Treiber auf Systemebene enthält StartName den Namen des Treiberobjekts (d. h. FileSystem Rdr oder Driver Xns), den das Eingabe- und Ausgabesystem \ \ \ (E/A) zum Laden des \ Gerätetreibers verwendet. Wenn NULL angegeben wird, wird der Treiber mit einem Standardobjektnamen ausgeführt, der vom E/A-System basierend auf dem Dienstnamen erstellt wird.

Beispiel: \ DWDOM-Administrator

StartPassword [ In]

Kennwort für den Kontonamen, der durch den StartName-Parameter angegeben wird. Geben Sie NULL an, wenn Sie das Kennwort nicht ändern. Geben Sie eine leere Zeichenfolge an, wenn der Dienst kein Kennwort besitzt.

LoadOrderGroup [ In]

Gruppenname, der dem neuen Dienst zugeordnet ist. Ladereihenfolgegruppen sind in der Registrierung enthalten und bestimmen die Reihenfolge, in der Dienste in das Betriebssystem geladen werden. Wenn der Zeiger NULL ist oder auf eine leere Zeichenfolge zeigt, gehört der Dienst nicht zu einer Gruppe. Abhängigkeiten zwischen Gruppen sollten im LoadOrderGroupDependencies-Parameter aufgeführt werden. Dienste in der Liste der Last reihenfolgengruppen werden zuerst gestartet, gefolgt von Diensten in Gruppen, die nicht in der Liste der Last reihenfolgengruppen enthalten sind, gefolgt von Diensten, die nicht zu einer Gruppe gehören. Die Registrierung verfügt über eine Liste der Last reihenfolgengruppen unter:

HKEY _ LOCAL _ MACHINE-System \ \ CurrentControlSet-Steuerelement \ \ ServiceGroupOrder

LoadOrderGroupDependencies [ In]

Array von Last reihenfolgengruppen, die vor diesem Dienst gestartet werden müssen. Jedes Element im Array wird durch NULL getrennt, und die Liste wird durch zwei NULL-Werte beendet. In Visual Basic skript können Sie ein vbArray übergeben. Wenn der Zeiger NULL ist oder auf eine leere Zeichenfolge zeigt, weist der Dienst keine Abhängigkeiten auf. Gruppennamen muss das Zeichen SC GROUP _ _ IDENTIFIER (definiert in der Datei Winsvc.h) vorangestellt sein, um sie von einem Dienstnamen zu unterscheiden, da Dienste und Dienstgruppen denselben Namespace verwenden. Abhängigkeit von einer Gruppe bedeutet, dass dieser Dienst ausgeführt werden kann, wenn mindestens ein Mitglied der Gruppe ausgeführt wird, nachdem versucht wurde, alle Mitglieder der Gruppe zu starten.

ServiceDependencies [ In]

Ein Array, das die Namen der Dienste enthält, die gestartet werden müssen, bevor dieser Dienst gestartet wird. Jedes Element im Array wird durch NULL getrennt, und die Liste wird durch zwei NULL-Werte beendet. In Visual Basic oder Skripts können Sie ein vbArray übergeben. Wenn der Zeiger NULL ist oder auf eine leere Zeichenfolge zeigt, weist der Dienst keine Abhängigkeiten auf. Abhängigkeit von einem Dienst bedeutet, dass dieser Dienst nur ausgeführt werden kann, wenn der Dienst, von dem er abhängt, ausgeführt wird.

Rückgabewert

Gibt den Wert 0 (null) zurück, wenn der Dienst erfolgreich erstellt wurde, 1 (eins), wenn die Anforderung nicht unterstützt wird, und eine beliebige andere Zahl, um einen Fehler anzugeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista
Unterstützte Mindestversion (Server)
Windows Server 2008
Namespace
Stamm \ CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Siehe auch

Betriebssystemklassen

Win32 _ SystemDriver