Modificare il metodo della classe Win32_SystemDriver
Il metodo ChangeWMI class modifica un servizio Win32_SystemDriver . Il parametro Win32_LoadOrderGroup rappresenta un raggruppamento di servizi di sistema che definiscono le dipendenze di esecuzione. I servizi devono essere avviati nell'ordine specificato dal gruppo di ordini di carico perché i servizi dipendono l'uno dall'altro. Questi servizi dipendenti richiedono che la presenza dei servizi precedenti funzioni correttamente.
In questo argomento viene utilizzata la sintassi MOF (Managed Object Format). Per altre informazioni sull'uso di questo metodo, vedere Chiamata di un metodo.
Sintassi
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[]
);
Parametri
-
DisplayName [in]
-
Nome visualizzato del servizio. La lunghezza massima della stringa è di 256 caratteri. Il nome viene mantenuto senza maiuscole/minuscole nella gestione controllo del servizio. I confronti di DisplayName non fanno sempre distinzione tra maiuscole e minuscole.
Vincoli: accetta lo stesso valore del parametro Name .
Esempio: "Atdisk"
-
PathName [in]
-
Percorso completo del file eseguibile che implementa il servizio.
Esempio: \SystemRoot\System32\drivers\afd.sys
-
ServiceType [in]
-
Tipo di servizi forniti ai processi che li chiamano.
-
1 (0x1)
-
Kernel Driver
-
2 (0x2)
-
File System Driver
-
4 (0x4)
-
Adattatore
-
8 (0x8)
-
Recognizer Driver
-
16 (0x10)
-
Processo personale
-
32 (0x20)
-
Processo di condivisione
-
256 (0x100)
-
Processo interattivo
ErrorControl [in]
Gravità dell'errore se il servizio non viene avviato durante l'avvio. Il valore indica l'azione eseguita dal programma di avvio in caso di errore. Tutti gli errori vengono registrati dal sistema.
Ignora (0)
L'utente non viene notificato.
Normale (1)
Normale. L'utente viene notificato.
Grave (2)
Il sistema viene riavviato con l'ultima configurazione valida.
Critico (3)
Il sistema tenta un riavvio con una configurazione valida.
StartMode [in]
Modalità di avvio del servizio di base di Windows.
Avvio di avvio
Driver di dispositivo avviato dal caricatore del sistema operativo.
Avvio di avvio
Driver di dispositivo avviato dal caricatore del sistema operativo.
Avvio sistema
Driver di dispositivo avviato dal processo di inizializzazione del sistema operativo. Questo valore è valido solo per i servizi del driver.
Avvio automatico
Servizio da avviare automaticamente dal gestore di controllo del servizio durante l'avvio del sistema.
Inizio domanda
Servizio da avviare da Gestione controllo servizi quando un processo chiama il metodo StartService .
Disabili
Servizio che non può essere avviato.
DesktopInteract [in]
Valore che, se True, il servizio può creare o comunicare con le finestre sul desktop.
StartName [in]
Nome dell'account in cui viene eseguito il servizio. A seconda del tipo di servizio, il nome dell'account può essere nel formato DomainName\Username o .\Username. Quando viene eseguito, il processo del servizio viene registrato usando uno di questi due moduli. Se l'account appartiene al dominio predefinito, è possibile specificare .\Username. Se viene specificata una stringa vuota, il servizio viene connesso come account LocalSystem. Per i driver a livello di sistema o kernel, StartName contiene il nome dell'oggetto driver, ad esempio \FileSystem\Rdr o \Driver\Xns), che il sistema di input e output (I/O) usa per caricare il driver di dispositivo. Se viene specificato NULL, il driver viene eseguito con un nome di oggetto predefinito creato dal sistema di I/O in base al nome del servizio, ad esempio DWDOM\Amministrazione.
È anche possibile usare il formato nome dell'entità utente (UPN) per specificare startName, ad esempio Username@DomainName.
StartPassword [in]
Password del nome dell'account specificato dal parametro StartName . Specificare NULL se non si modifica la password. Specificare una stringa vuota se il servizio non dispone di password.
Nota
Quando si modifica un servizio da un sistema locale a una rete o da una rete a un sistema locale, StartPassword deve essere una stringa vuota ("") e non NULL.
LoadOrderGroup [in]
Nome del gruppo a cui è associato. I gruppi di ordini di carico sono contenuti nel Registro di sistema e determinano la sequenza in cui i servizi vengono caricati nel sistema operativo. Se il puntatore è NULL o se punta a una stringa vuota, il servizio non appartiene a un gruppo. Le dipendenze tra i gruppi devono essere elencate nel parametro LoadOrderGroupDependencies . I servizi nell'elenco dei gruppi di ordinamento del carico vengono avviati per primi, seguiti dai servizi nei gruppi non inclusi nell'elenco dei gruppi di ordinamento del carico, seguiti da servizi che non appartengono a un gruppo. Il Registro di sistema include un elenco di gruppi di ordinamento di carico disponibili in:
HKEY_LOCAL_MACHINE\Sistema\Currentcontrolset\Controllo\ServiceGroupOrder
LoadOrderGroupDependencies [in]
Elenco di gruppi di ordinamento di carico che devono iniziare prima dell'avvio del servizio. La matrice è con terminazione null doppia. Se il puntatore è NULL o se punta a una stringa vuota, il servizio non ha dipendenze. I nomi dei gruppi devono essere preceduti dal carattere SC_GROUP_IDENTIFIER (definito nel file WinSvc.h) per distinguerli dai nomi dei servizi, perché i servizi e i gruppi di servizi condividono lo stesso spazio dei nomi. La dipendenza da un gruppo significa che questo servizio può essere eseguito se almeno un membro del gruppo è in esecuzione dopo un tentativo di avviare tutti i membri del gruppo.
ServiceDependencies [in]
Elenco contenente i nomi dei servizi che devono essere avviati prima dell'avvio del servizio. La matrice è con terminazione null doppia. Se il puntatore è NULL o se punta a una stringa vuota, il servizio non ha dipendenze. La dipendenza da un servizio significa che questo servizio può essere eseguito solo se il servizio da cui dipende è in esecuzione.
Valore restituito
Restituisce un valore pari a zero (0) se il servizio è stato modificato correttamente, 1 (uno) se la richiesta non è supportata e qualsiasi altro numero per indicare un errore.
-
Operazione riuscita (0)
-
Non supportato (1)
-
Accesso negato (2)
-
Servizi dipendenti in esecuzione (3)
-
Controllo del servizio non valido (4)
-
Il servizio non può accettare il controllo (5)
-
Servizio non attivo (6)
-
Timeout richiesta di servizio (7)
-
Errore sconosciuto (8)
-
Percorso non trovato (9)
-
Servizio già in esecuzione (10)
-
Database del servizio bloccato (11)
-
Dipendenza del servizio eliminata (12)
-
Errore di dipendenza del servizio (13)
-
Servizio disabilitato (14)
-
Accesso al servizio non riuscito (15)
-
Servizio contrassegnato per l'eliminazione (16)
-
Nessun thread di servizio (17)
-
Dipendenza circolare dello stato (18)
-
Nome duplicato stato (19)
-
Status Invalid Name (20)
-
Parametro status non valido (21)
-
Stato Account del servizio non valido (22)
-
Servizio di stato esistente (23)
-
Servizio già sospeso (24)
-
Altro (25 4294967295)
Commenti
Per modificare un servizio da un servizio di rete al sistema locale, usare i valori seguenti per i parametri StartName e StartPassword :
StartName = "LocalSystem"
StartPassword = "" // - empty string, not NULL
Per modificare un servizio da un servizio di sistema locale al servizio di rete, usare i valori seguenti per i parametri StartName e StartPassword :
StartName = "NT AUTHORITY\NetworkService"
StartPassword = "" // - empty string, not NULL
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista |
Server minimo supportato |
Windows Server 2008 |
Spazio dei nomi |
Root\CIMV2 |
Intestazione |
|
MOF |
|
DLL |
|