Condividi tramite


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
Mbnapi.h
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Vedi anche

Classi del sistema operativo

Win32_SystemDriver