Change-Methode der Win32_BaseService-Klasse
Die ChangeWMI-Klassenmethode ändert ein von Win32_BaseService abgeleitetes Dienstobjekt. Der parameter Win32_LoadOrderGroup stellt eine Gruppe von Systemdiensten dar, die Ausführungsabhängigkeiten definieren. Die Dienste müssen in der von der Ladereihenfolgegruppe angegebenen Reihenfolge initiiert werden, da die Dienste voneinander abhängig sind. Für diese abhängigen Dienste ist es erforderlich, dass vorgänger Dienste ordnungsgemäß funktionieren.
In diesem Thema wird MOF-Syntax (Managed Object Format) verwendet. Weitere Informationen zur Verwendung dieser Methode finden Sie unter Aufrufen einer Methode.
Syntax
uint32 Change(
[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
-
DisplayName [in]
-
Der Anzeigename für einen Dienst. Die maximale Länge der Zeichenfolge beträgt 256 Zeichen. Der Name wird im Dienststeuerungs-Manager beibehalten. Bei DisplayName-Vergleichen wird immer nicht zwischen Groß-/Kleinschreibung unterschieden.
Einschränkungen: Akzeptiert denselben Wert wie der Name-Parameter .
Beispiel: "Atdisk".
-
PathName [in]
-
Der vollqualifizierte Pfad zu der ausführbaren Datei, die einen Dienst implementiert.
Beispiel: "\SystemRoot\System32\drivers\afd.sys".
-
ServiceType [in]
-
Art der Dienste, die für Prozesse bereitgestellt werden, die sie aufrufen.
-
Kerneltreiber (1)
-
Dateisystemtreiber (2)
-
Adapter (4)
-
Erkennungstreiber (8)
-
Eigener Prozess (16)
-
Freigabeprozess (32)
-
(256)
-
Interaktiver Prozess
ErrorControl [in]
Schweregrad eines Fehlers, wenn dieser Dienst während des Starts nicht gestartet wird. Der Wert gibt die Aktion an, die das Startprogramm ausführt, wenn ein Fehler auftritt. Das System protokolliert alle Fehler.
Ignorieren (0)
Der Benutzer wird nicht benachrichtigt.
Normal (1)
Normal. Der Benutzer wird benachrichtigt.
Schwerwiegend (2)
Das System wird mit der letzten guten Konfiguration neu gestartet.
Kritisch (3)
Das System versucht, mit einer fehlerfreien Konfiguration zu neu starten.
StartMode [in]
Startmodus des Windows-Basisdiensts.
Startstart ("Start")
Gerätetreiber, den das Betriebssystemladeprogramm startet.
Systemstart ("System")
Gerätetreiber, der vom Initialisierungsprozess des Betriebssystems gestartet wird. Dieses Wert ist nur für Treiberdienste gültig.
Automatischer Start ("Automatisch")
Dienst, der während des Systemstarts automatisch vom Dienststeuerungs-Manager gestartet werden soll.
Bedarfsstart ("Manuell")
Dienst, der vom Dienststeuerungs-Manager gestartet werden soll, wenn ein Prozess die StartService-Methode aufruft.
Deaktiviert ("Deaktiviert")
Dienst, der nicht gestartet werden kann.
DesktopInteract [in]
True gibt an, dass der Dienst ein Fenster auf dem Desktop erstellen oder mit diesem kommunizieren kann.
StartName [in]
Kontoname, unter dem der Dienst ausgeführt wird, der vom Diensttyp abhängt. Der Kontoname kann in form von DomainName\Username oder .\Username vorliegen. Wenn er ausgeführt wird, wird der Dienstprozess mit einem der beiden vorherigen Formulare protokolliert. Wenn das Konto zur integrierten Domäne gehört, kann .\Username angegeben werden. Wenn eine leere Zeichenfolge angegeben wird, wird der Dienst als LocalSystem-Konto angemeldet. Bei Treibern auf Kernel- oder Systemebene enthält StartName den Treiberobjektnamen, z. B. \FileSystem\Rdr oder \Driver\Xns, den das Eingabe- und Ausgabesystem (E/A) zum Laden des Gerätetreibers verwendet. Wenn NULL angegeben ist, wird der Treiber mit einem Standardobjektnamen ausgeführt, den das E/A-System basierend auf dem Dienstnamen erstellt, z. B. DWDOM\Admin.
Sie können auch das UpN-Format (User Principal Name) verwenden, um startName anzugeben, z. B. Username@DomainName.
StartPassword [in]
Kennwort für den Kontonamen, den der Parameter StartName angibt. Geben Sie NULL an, wenn Sie das Kennwort nicht ändern. Geben Sie eine leere Zeichenfolge an, wenn der Dienst kein Kennwort hat.
Hinweis
Wenn Sie einen Dienst vom lokalen System in ein Netzwerk oder vom Netzwerk in ein lokales System ändern, muss StartPassword eine leere Zeichenfolge ("") und nicht NULL sein.
LoadOrderGroup [in]
Gruppenname, dem sie zugeordnet ist. Ladereihenfolgegruppen sind in der Systemregistrierung enthalten und bestimmen die Reihenfolge, in der Dienste in ein 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 Parameter LoadOrderGroupDependencies aufgeführt werden. Dienste in der Liste der Lastenreihenfolgen werden zuerst gestartet, gefolgt von Diensten in Gruppen, die nicht in der Liste der Lastenreihenfolgengruppe enthalten sind, gefolgt von Diensten, die nicht zu einer Gruppe gehören. Die Systemregistrierung enthält eine Liste der Lastreihenfolgegruppen unter HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ServiceGroupOrder.
LoadOrderGroupDependencies [in]
Liste der Ladereihenfolgegruppen, die gestartet werden müssen, bevor dieser Dienst gestartet wird. Das Array ist doppelt NULL-endend. Wenn der Zeiger NULL ist oder auf eine leere Zeichenfolge zeigt, weist der Dienst keine Abhängigkeiten auf. Gruppennamen müssen mit dem SC_GROUP_IDENTIFIER (in der Datei Winsvc.h definiert) vorangestellt werden, um sie von Dienstnamen zu unterscheiden, da Dienste und Dienstgruppen denselben Namespace verwenden. Abhängigkeit von einer Gruppe bedeutet, dass dieser Dienst ausgeführt werden kann, wenn nach dem Versuch, alle Mitglieder der Gruppe zu starten, mindestens ein Mitglied der Gruppe ausgeführt wird.
Dienstabhängigkeiten [in]
Liste, die die Namen der Dienste enthält, die gestartet werden müssen, bevor dieser Dienst gestartet wird. Das Array ist doppelt NULL-endend. 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 einen der in der folgenden Liste aufgeführten Werte oder einen anderen Wert zurück, um einen Fehler anzuzeigen.
-
Erfolgreich
-
0
Die Anforderung wird akzeptiert.
-
Nicht unterstützt
-
1
Die Anforderung wird nicht unterstützt.
-
Zugriff verweigert
-
2
Der Benutzer verfügt nicht über die erforderlichen Zugriffsberechtigungen.
-
Abhängige Dienste, die ausgeführt werden
-
3
Der Dienst kann nicht beendet werden, da andere ausgeführte Dienste davon abhängig sind.
-
Ungültiges Dienststeuerelement
-
4
Der angeforderte Kontrollcode ist ungültig oder für den Dienst inakzeptabel.
-
Der Dienst kann die Steuerung nicht akzeptieren.
-
5
Der angeforderte Steuercode kann nicht an den Dienst gesendet werden, da die State-Eigenschaft im Win32_BaseService-Objekt gleich 0, 1 oder 2 ist.
-
Dienst nicht aktiv
-
6
Der Dienst wurde nicht gestartet.
-
Dienstanforderungstimeout
-
7
Der Dienst reagiert nicht schnell auf die Startanforderung.
-
Unbekannter Fehler
-
8
Interaktiver Prozess.
-
Pfad nicht gefunden
-
9
Der Verzeichnispfad zur ausführbaren Dienstdatei wurde nicht gefunden.
-
Dienst wird bereits ausgeführt
-
10
Der Dienst wird schon ausgeführt.
-
Dienstdatenbank gesperrt
-
11
Die Datenbank zum Hinzufügen eines neuen Diensts ist gesperrt.
-
Dienstabhängigkeit gelöscht
-
12
Eine Abhängigkeit, auf der sich dieser Dienst stützt, wird aus dem System entfernt.
-
Dienstabhängigkeitsfehler
-
13
Der Dienst findet den von einem abhängigen Dienst benötigten Dienst nicht.
-
Dienst deaktiviert
-
14
Der Dienst wird über das System deaktiviert.
-
Fehler bei der Dienstanmeldung
-
15
Der Dienst hat nicht die richtige Authentifizierung, um im System ausgeführt zu werden.
-
Dienst, der zum Löschen markiert ist
-
16
Dieser Dienst wird aus dem System entfernt.
-
Dienst ohne Thread
-
17
Es gibt keinen Ausführungsthread für den Dienst.
-
Statuskreisabhängigkeit
-
18
Es gibt Ringabhängigkeiten beim Starten des Diensts.
-
Doppelter Name des Status
-
19
Es wird ein Dienst unter dem gleichen Namen ausgeführt.
-
Status Ungültiger Name
-
20
Der Name des Diensts enthält ungültige Zeichen.
-
Status Ungültiger Parameter
-
21
Ungültige Parameter wurden an den Dienst übergeben.
-
Status Ungültiges Dienstkonto
-
22
Das Konto für diesen Dienst, unter dem ausgeführt werden soll, ist ungültig oder verfügt nicht über die Berechtigungen zum Ausführen des Diensts.
-
Statusdienst vorhanden
-
23
Der Dienst ist in der Datenbank der im System verfügbaren Dienste vorhanden.
-
Dienst bereits angehalten
-
24
Der Dienst ist im System derzeitig angehalten.
-
Andere
-
25 4294967295
Bemerkungen
Um einen Dienst von einem Netzwerk in ein lokales System zu ändern, verwenden Sie die folgenden Werte für die Parameter StartName und StartPassword :
StartName = "LocalSystem"
StartPassword = "" // - empty string, not NULL
Um einen Dienst von einem lokalen System in ein Netzwerk zu ändern, verwenden Sie die folgenden Werte für die Parameter StartName und StartPassword :
StartName = "NT AUTHORITY\NetworkService"
StartPassword = "" // - empty string, not NULL
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows Vista |
Unterstützte Mindestversion (Server) |
WindowsServer 2008 |
Namespace |
Root\CIMV2 |
Header |
|
MOF |
|
DLL |
|