Funzione ChangeServiceConfig2W (winsvc.h)

Modifica i parametri di configurazione facoltativi di un servizio.

Sintassi

BOOL ChangeServiceConfig2W(
  [in]           SC_HANDLE hService,
  [in]           DWORD     dwInfoLevel,
  [in, optional] LPVOID    lpInfo
);

Parametri

[in] hService

Handle al servizio. Questo handle viene restituito dalla funzione OpenServiceW o CreateServiceW e deve avere il diritto di accesso SERVICE_CHANGE_CONFIG. Per altre informazioni, vedere Sicurezza del servizio e diritti di accesso.

Se il controller di servizio gestisce l'azione SC_ACTION_RESTART , hService deve disporre del diritto di accesso SERVICE_START .

[in] dwInfoLevel

Informazioni di configurazione da modificare. Questo parametro può avere uno dei valori seguenti.

Valore Significato
SERVICE_CONFIG_DELAYED_AUTO_START_INFO
3
Il parametro lpInfo è un puntatore a una struttura SERVICE_DELAYED_AUTO_START_INFO .

Windows Server 2003 e Windows XP: Questo valore non è supportato.

SERVICE_CONFIG_DESCRIPTION
1
Il parametro lpInfo è un puntatore a una struttura SERVICE_DESCRIPTION .
SERVICE_CONFIG_FAILURE_ACTIONS
2
Il parametro lpInfo è un puntatore a una struttura SERVICE_FAILURE_ACTIONS .

Se il controller di servizio gestisce l'azione SC_ACTION_REBOOT, il chiamante deve avere il privilegiodi SE_SHUTDOWN_NAME. Per altre informazioni, vedere Esecuzione con privilegi speciali.

SERVICE_CONFIG_FAILURE_ACTIONS_FLAG
4
Il parametro lpInfo è un puntatore a una struttura SERVICE_FAILURE_ACTIONS_FLAG .

Windows Server 2003 e Windows XP: Questo valore non è supportato.

SERVICE_CONFIG_PREFERRED_NODE
9
Il parametro lpInfo è un puntatore a una struttura SERVICE_PREFERRED_NODE_INFO .

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SERVICE_CONFIG_PRESHUTDOWN_INFO
7
Il parametro lpInfo è un puntatore a una struttura SERVICE_PRESHUTDOWN_INFO .

Windows Server 2003 e Windows XP: Questo valore non è supportato.

SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO
6
Il parametro lpInfo è un puntatore a una struttura SERVICE_REQUIRED_PRIVILEGES_INFO .

Windows Server 2003 e Windows XP: Questo valore non è supportato.

SERVICE_CONFIG_SERVICE_SID_INFO
5
Il parametro lpInfo è un puntatore a una struttura SERVICE_SID_INFO .
SERVICE_CONFIG_TRIGGER_INFO
8
Il parametro lpInfo è un puntatore a una struttura SERVICE_TRIGGER_INFO . Questo valore non è supportato dalla versione ANSI di ChangeServiceConfig2.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato fino a Windows Server 2008 R2.

SERVICE_CONFIG_LAUNCH_PROTECTED
12
Il parametro lpInfo è un puntatore di una struttura SERVICE_LAUNCH_PROTECTED_INFO .
Nota Questo valore è supportato a partire da Windows 8.1.
 

[in, optional] lpInfo

Puntatore al nuovo valore da impostare per le informazioni di configurazione. Il formato di questi dati dipende dal valore del parametro dwInfoLevel . Se questo valore è NULL, le informazioni rimangono invariate.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

La funzione ChangeServiceConfig2 modifica le informazioni di configurazione facoltative per il servizio specificato nel database di Gestione controllo del servizio. È possibile ottenere le informazioni di configurazione facoltative correnti usando la funzione QueryServiceConfig2 .

Non è possibile impostare il valore SERVICE_CONFIG_FAILURE_ACTIONS per un servizio che condivide il processo di gestione del controllo del servizio. Include tutti i servizi la cui immagine eseguibile è "Services.exe".

È possibile modificare ed eseguire query su informazioni di configurazione aggiuntive usando rispettivamente le funzioni ChangeServiceConfigW e QueryServiceConfigW .

Se un servizio è configurato per il riavvio al termine di un errore, il gestore del controllo del servizio accoda l'azione di riavvio da eseguire dopo il ritardo di tempo specificato. Impossibile annullare un'azione di riavvio in coda. Se il servizio viene riavviato manualmente e quindi arrestato prima che si verifichi l'azione di riavvio in coda, il servizio verrà riavviato in modo imprevisto quando il ritardo del tempo trascorso. Il servizio deve essere disabilitato in modo esplicito per impedire il riavvio.

Il valore SERVICE_CONFIG_LAUNCH_PROTECTED può essere usato per avviare il servizio come protetto. Per avviare il servizio come protetto, il servizio deve essere firmato con un certificato speciale.

SERVICE_CONFIG_LAUNCH_PROTECTED esempio:

SERVICE_LAUNCH_PROTECTED_INFO Info;
SC_HANDLE hService;

Info.dwLaunchProtected = SERVICE_LAUNCH_PROTECTED_ANTIMALWARE_LIGHT;

hService = CreateService (...);

if (ChangeServiceConfig2(hService, 
                        SERVICE_CONFIG_LAUNCH_PROTECTED,
                        &Info) == FALSE)
{
    Result = GetLastError();
}

Esempio

Per un esempio, vedere Modifica della configurazione di un servizio.

Nota

L'intestazione winsvc.h definisce ChangeServiceConfig2 come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winsvc.h (include Windows.h)
Libreria Advapi32.lib
DLL Advapi32.dll

Vedi anche

ChangeServiceConfigW

CreateServiceW

OpenServiceW

QueryServiceConfigW

QueryServiceConfig2W

QueryServiceDynamicInformation

SERVICE_DELAYED_AUTO_START_INFO

SERVICE_DESCRIPTION

SERVICE_FAILURE_ACTIONS

SERVICE_FAILURE_ACTIONS_FLAG

SERVICE_PRESHUTDOWN_INFO

SERVICE_REQUIRED_PRIVILEGES_INFO

SERVICE_SID_INFO

Configurazione del servizio

Funzioni del servizio