Dic 27 2012

Creare un servizio sotto Windows XP/2003 (Service Installer)

Category: TecnologiaAntonio @ 14:54


A volte è utile/necessario far funzionare come servizio di sistema programmi che non sono stati creati con questa caratteristica.
I due casi più comuni sono: far partire un programma prima del login dell’utente, (e/o in assenza di esso), e programmi che richiedono privilegi amministrativi che non è opportuno concedere all’utente del PC.

In questo ci vengono in aiuto SRVANY.EXE e INSTSRV.EXE, entrambi presenti nel resource kit di Windows, e scaricabili a questo indirizzo (nome file: rktools.exe).


Vanno copiati nella cartella C:\Windows\System32, o comunque nella System32 del vostro sistema.
Supponiamo che il nostro programma si chiami Prova.exe (presente nella cartella c:\ ), come prima cosa registriamolo come servizio di sistema con questo comando:
INSTSRV NomeServizio C:\Windows\System32\Srvany.exe, sostituendo a NomeServizio un nome adatto.

Adesso editiamo la chiave di registro HKLM\System\Current Control Set\Services\NomeServizio\Parameters, ed aggiungiamo una stringa di tipo REG_SZ chiamata “Application”, il cui valore deve essere il path completo alla nostra applicazione. Ad esempio C:\Prova.exe

Fatto ciò facciamo partire il servizio, che a sua volta dovrebbe avviare il programma. Possiamo impostare le normali proprietà del servizio tramite la solita interfaccia di gestione.

Tag: , , ,

Commenti chiusi.