Condividi tramite


Programmi di servizio

Un programma di servizio contiene codice eseguibile per uno o più servizi. Un programma di servizio creato con il tipo SERVICE_WIN32_OWN_PROCESS contiene il codice per un solo servizio. Un programma di servizio creato con il tipo SERVICE_WIN32_SHARE_PROCESS contiene codice per più di un servizio, consentendo loro di condividere il codice. Un esempio di programma di servizio che esegue questa operazione è il processo host del servizio generico, Svchost.exe, che ospita i servizi di Windows interni. Si noti che Svchost.exe è riservato per l'uso dal sistema operativo e non deve essere usato dai servizi non Windows. Gli sviluppatori devono invece implementare i propri programmi di hosting del servizio.

Un programma di servizio può essere configurato per l'esecuzione nel contesto di un account utente dal dominio predefinito (locale), primario o attendibile. Può anche essere configurato per l'esecuzione in uno speciale account utente del servizio .

Gli argomenti seguenti descrivono i requisiti dell'interfaccia del gestore di controllo del servizio (SCM) che un programma di servizio deve includere:

Questi argomenti non si applicano ai servizi driver. Per i requisiti di interfaccia dei servizi driver, vedere Windows Driver Kit (WDK).

Un servizio viene eseguito come processo in background che può influire sulle prestazioni del sistema, sulla velocità di risposta, sull'efficienza energetica e sulla sicurezza. Per le linee guida per l'ottimizzazione dei servizi, vedere Sviluppo di processi in background efficienti per Windows. Gli argomenti seguenti descrivono considerazioni aggiuntive sulla programmazione:

Si noti che se il programma del servizio funziona come server RPC, deve usare endpoint dinamici e autenticazione reciproca.