Condividi tramite


Metodo Create della classe Win32_SystemDriver

Il metodo Creaclasse WMI crea un nuovo servizio gestito dal driver di sistema. Il parametro Win32_LoadOrderGroup rappresenta un raggruppamento dei servizi di sistema che definiscono le dipendenze di esecuzione. I servizi devono essere avviati nell'ordine specificato dal gruppo di ordini di carico, poiché i servizi dipendono l'uno dall'altro. Questi servizi dipendenti richiedono la presenza dei servizi precedenti per funzionare correttamente.

Questo argomento usa la sintassi MOF (Managed Object Format). Per altre informazioni sull'uso di questo metodo, vedere Chiamata di un metodo.

Sintassi

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[]
);

Parametri

Nome [in]

Nome del servizio da installare nel metodo Create . La lunghezza massima della stringa è di 256 caratteri. Il database di Service Control Manager mantiene il caso dei caratteri, ma i confronti dei nomi del servizio sono sempre senza distinzione tra maiuscole e minuscole. Le barre in avanti (/) e le barre rovesciate doppie (\) sono caratteri di nome servizio non validi.

DisplayName [in]

Nome visualizzato del servizio. La lunghezza massima della stringa è di 256 caratteri. Il nome viene mantenuto in caso di maiuscole e minuscole in Service Control Manager. I confronti di DisplayName sono sempre senza 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)

Driver di riconoscimento

16 (0x10)

Processo personalizzato

32 (0x20)

Processo di condivisione

256 (0x100)

Processo interattivo

ErrorControl [in]

Gravità dell'errore se il metodo Create non viene avviato. Questo valore indica l'azione eseguita dal programma di avvio se si verifica un errore. Tutti gli errori vengono registrati dal sistema.

0

"Ignora"

L'utente non viene notificato.

1

"Normal"

L'utente viene notificato.

2

"Grave"

Il sistema viene riavviato con l'ultima configurazione valida nota.

3

"Critico"

Il sistema tenta di iniziare con una buona configurazione.

StartMode [in]

Modalità di avvio del servizio di base di Windows.

Avvio

Driver del dispositivo avviato dal caricatore del sistema operativo. Questo valore è valido solo per i servizi del driver.

Sistema

Driver del dispositivo avviato dal processo di inizializzazione del sistema operativo. Questo valore è valido solo per i servizi del driver.

Automatico

Servizio da avviare automaticamente da Service Control Manager durante l'avvio del sistema.

Manuale

Servizio da avviare da Service Control Manager quando un processo chiama il metodo StartService .

Disabili

Servizio che non può più essere avviato.

DesktopInteract [in]

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 User Principal Name (UPN) (Username@DomainName). Il processo di servizio viene registrato usando uno di questi due moduli durante l'esecuzione. Se l'account appartiene al dominio predefinito, è possibile specificare .\Username. Se viene specificato NULL , il servizio viene connesso come account LocalSystem. Per i driver a livello di kernel o di sistema, StartName contiene il nome dell'oggetto driver , ovvero \FileSystem\Rdr o \Driver\Xns) usato dal sistema di input e output (I/O) 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.

Esempio: DWDOM\Amministrazione

StartPassword [in]

Password per il nome dell'account specificato dal parametro StartName . Specificare NULL se la password non viene modificata. Specificare una stringa vuota se il servizio non dispone di password.

LoadOrderGroup [in]

Nome del gruppo associato al nuovo servizio. 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 di gruppi di ordinamento del carico vengono avviati prima, seguiti dai servizi nei gruppi non nell'elenco dei gruppi di ordinamento del carico, seguiti dai servizi che non appartengono a un gruppo. Il Registro di sistema include un elenco di gruppi di ordinamento del carico disponibili in:

HKEY_LOCAL_MACHINE\Sistema\Currentcontrolset\Controllo\ServiceGroupOrder

LoadOrderGroupDependencies [in]

Matrice di gruppi di ordinamento del carico che devono iniziare prima di questo servizio. Ogni elemento della matrice è delimitato da NULL e l'elenco viene terminato da due valori NULL . In Visual Basic o script è possibile passare un vbArray. Se il puntatore è NULL o se punta a una stringa vuota, il servizio non ha dipendenze. I nomi di gruppo devono essere preceduti dal carattere SC_GROUP_IDENTIFIER (definito nel file Winsvc.h) per differenziarlo da un nome del servizio, 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]

Matrice che contiene i nomi dei servizi che devono iniziare prima dell'avvio del servizio. Ogni elemento della matrice è delimitato da NULL e l'elenco viene terminato da due valori NULL . In Visual Basic o script è possibile passare un vbArray. 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 dipende dall'esecuzione.

Valore restituito

Restituisce un valore pari a 0 (zero) se il servizio è stato creato correttamente, 1 (uno) se la richiesta non è supportata e qualsiasi altro numero per indicare un errore.

Requisiti

Requisito Valore
Client minimo supportato
Windows Vista
Server minimo supportato
Windows Server 2008
Spazio dei nomi
Radice\CIMV2
MOF
CIMWin32.mof
DLL
CIMWin32.dll

Vedi anche

Classi del sistema operativo

Win32_SystemDriver