Newsgroup: it.comp.os.win.xp
Titolo: Avviare servizio solo per determinati utenti

E' possibile fare in modo di avviare un servizio in Windows XP solo
per determinati utenti? In pratica, all'atto del login in Windows XP,
mi servirebbe avviare un determinato servizio Windows solo se il login
viene effettuato da un determinato utente.
Grazie

md...@hotmail.it
 ha scritto:

Non � un servizio, se aspetta il login di un utente.
Lo devi mettere in esecuzione automatica, e trovare il modo di spegnerlo
al logout.
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 di spegnerlo al logout.
Ho pensato la stessa cosa, potrebbe lasciarlo in avvio "manuale"
e attivarlo solo al login di un determinato utente con un batch tipo
"net start [nomeservizio]", nell'esecuzione automatica solo di
quell'utente, ma per spegnerlo al logout non ha opzioni altrettanto
semplici[1].
Forse basterebbe mettere un paio di script nelle GPO.
start-->esegui-->gpedit.msc-->configurazione utente-->impostazioni
di windows-->script.
Per� ho il sospetto che possa funzionare solo se l'utente � loggato
ad un dominio.
Se l'OP vuole provare ci faccia sapere :-)
[1] Ho provato con una appena pi� complicata: mettere un
microprogramma in VB in esecuzione automatica che si limiti
a rilevare una QueryUnload. Alla richiesta di chiusura da parte
del SO avrebbe dovuto lanciare un NET STOP, ma non funziona.
AFAIK Win inibisce il lancio di applicazioni quando il sistema
� in fase di chiusura, probabilmente il problema � l�.
Bye, G. 

� in fase di chiusura, probabilmente il problema � l�.
Non capisco perch� in fase di chiusura, in quel caso il servizio si interrompe
sempre.
Ll'evento che dovrebbe intercettare � semmai il logout quando pu� disconnettersi
un utente e partire con un altro, si potrebbe provare con qualche API, tipo la
EnumServicesStatus e la CloseServiceHandle, la OpenSCManager,  OpenService o
CreateService.
http://allapi.mentalis.org/apilist/EnumServicesStatus.shtml
http://allapi.mentalis.org/apilist/OpenSCManager.shtml
Non ho tempo di mettermi a giocare con le API adesso, per� credo che ci si possa
riuscire.
--
ciao
  Stefano

 credo che ci si possa riuscire.
Ci avevo pensato, ma da una rapida guglata pare che sia un
vecchio problema, distinguere il logout dallo shutdown da VB.
C'era un programma in Delphi che lo faceva e ho pensato di
dargli un'occhiata per vedere come faceva, ma il server non
esiste pi�.
Per quel che vidi un bel po' di tempo fa si pu� subclassare e
vedere i Windows Messages, ma all'applicazione pare arrivi
sempre la WM_QUERYENDSESSION. Solo dopo l'inizio dello
shutdown arriva una WM_ENDSESSION da cui si pu� capire
il tipo di uscita da uno dei parametri, ma a quel punto il SO
non permette pi� di fare una Shell ad altre applicazioni.
Bye, G. 

 sempre.
Infatti, si stava parlando di logout dell'utente, di chiusura della
sessione dell'utente, non del sistema.


 Bye, G.
Vi ringrazio per le risposte, speravo che la soluzione potesse essere
più rapida. Era solo per la registrazione degli access log ma penso
che a questo punto registrerò gli eventi per tutti gli utenti ed
estrapolerò all'occorrenza solo quelli di quel determinato utente.
Se le dimensioni degli access log dovessero essere esagerate allora
proverò le soluzioni da voi indicate e vi farò sapere.
Saluti