Condividi tramite


Metodo Create della classe Win32_BaseService

Il metodo Creaclasse WMI crea un nuovo servizio. Il parametro 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 gestione controllo del servizio 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 nella gestione controllo del servizio. 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. Il valore è una bitmap.

Driver kernel (1)

Driver file system (2)

Adapter (4)

Driver di riconoscimento (8)

Processo personalizzato (16)

Processo di condivisione (32)

256

Processo interattivo

ErrorControl [in]

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

Ignora (0)

L'utente non viene notificato.

Normale (1)

L'utente viene notificato.

Grave (2)

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

Critico (3)

Il sistema tenta di iniziare con una buona configurazione.

StartMode [in]

Modalità di avvio del servizio di base di Windows.

Avvio ("avvio ")

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

Avvio di sistema ("Sistema ")

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

Avvio automatico ("Automatico ")

Servizio da avviare automaticamente da Gestione controllo servizi durante l'avvio del sistema.

Demand Start ("Manuale")

Servizio da avviare dal gestore di controllo del servizio quando un processo chiama il metodo StartService .

Disabilitato ("Disabilitato ")

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". 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 nomi di 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 uno dei valori elencati nell'elenco seguente o qualsiasi altro valore per indicare un errore.

Success

0

La richiesta è stata accettata.

Non supportato

1

La richiesta non è supportata.

Accesso negato

2

L'utente non ha avuto l'accesso necessario.

Servizi dipendenti in esecuzione

3

Impossibile arrestare il servizio perché altri servizi in esecuzione dipendono dal servizio.

Controllo del servizio non valido

4

Il codice di controllo richiesto non è valido o non è accettabile per il servizio.

Il servizio non può accettare il controllo

5

Impossibile inviare il codice di controllo richiesto al servizio perché lo stato del servizio (Win32_BaseService. Proprietà state ) è uguale a 0, 1 o 2.

Servizio non attivo

6

Il servizio non è stato avviato.

Timeout della richiesta di servizio

7

Il servizio non ha risposto in tempo utile alla richiesta di avvio.

Errore sconosciuto

8

Processo interattivo.

Percorso non trovato

9

Non è stato trovato il percorso della directory del file eseguibile del servizio.

Servizio già in esecuzione

10

Il servizio è già in esecuzione.

Database di servizio bloccato

11

Il database a cui aggiungere il nuovo servizio è bloccato.

Dipendenza del servizio eliminata

12

Il servizio si basa su una dipendenza che è stata rimossa dal sistema.

Errore di dipendenza del servizio

13

Impossibile trovare un servizio dipendente necessario.

Servizio disabilitato

14

Il servizio è stato disabilitato dal sistema.

Accesso al servizio non riuscito

15

Il servizio non dispone delle credenziali di autenticazione corrette per l'esecuzione nel sistema.

Servizio contrassegnato per l'eliminazione

16

Questo servizio viene rimosso dal sistema.

Nessun thread del servizio

17

Nessun thread di esecuzione per il servizio.

Dipendenza circolare dello stato

18

All'avvio del servizio sono state rilevate dipendenze circolari.

Nome duplicato stato

19

È presente un servizio in esecuzione con lo stesso nome.

Nome non valido dello stato

20

Esistono caratteri non validi nel nome del servizio.

Parametro stato non valido

21

I parametri non validi sono stati passati al servizio.

Account del servizio non valido stato

22

L'account da eseguire in questo servizio non è valido o non dispone delle autorizzazioni per l'esecuzione del servizio.

Il servizio stato esiste

23

Il servizio esiste già nel database dei servizi disponibili dal sistema.

Servizio già sospeso

24

Il servizio è attualmente sospeso nel sistema.

Altri

25 4294967295

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_BaseService