Bonjour, je voulais savoir si un services Windows pouvait encore tourner
quand une session windows est fermée.
Comment s'y prendre dans ce cas?
:
Bonjour, je voulais savoir si un services Windows pouvait encore tourner
quand une session windows est fermée.
Comment s'y prendre dans ce cas?
:
un service peut forcément tourner même sans session, c'est le but d'un service
il suffit de créer un service, l'installer, et le mettre en mode démarrage automatique, dans ce cas il se lance au démarrage de windows avant l'ouverture de session, et s'arrête quand windows s'arrête
en conséquence un service ne peut rien afficher aux utilisateurs
Euh, j'ai pas compris là. Je crois qu'il fallait dire qu'un service windows n'a pas besoin de tourner avec une session utilisateur mais doit être démarré dans ce cas soit avec une connexion Local System ou Local Network qui sont tous deux des sessions windows mais impossible à un uilisateur de les utiliser pour se connecter.
pas sûr de te comprendre non plus
un service démarre sur un utilisateur, pas une session
le service se retrouve donc avec les droits de l'utilisateur (un service lancé sur un utilisateur A ne pourra pas lire les fichiers dont A n'a pas les droits dessus)
LocalNetwork est un utilisateur windows, mais ne peut pas être utilisé pour ouvrir une session, et windows non plus n'ouvre pas de session pour lui
même en choisissant un utilisateur qu'on a créé comme utilisateur du service, le service démarre avant l'ouverture de session et n'est pas lié à la session et ne peut être lancé que de façon unique
un service ne peut pas interragir avec le "bureau" (du moins par défaut, mais ca reste déconseillé)
d'ailleurs sur un windows server, un même utilisateur peut ouvrir 3 sessions, et le service n'aura qu'une seule instance en fonctionnement et c'est là qu'on comprends qu'un service ne doit pas agir avec le bureau, car si on a une fenêtre a affiché, windows ne sait pas sur quelle session des 3 il devrait le faire et puis un service lancé sur LocalNetwork ne trouverait pas de session sur laquelle afficher la fenêtre
Je pense que tu as une mauvaise compréhension de la définition de session windows.
Tiré de MSDN :
Que le service soit démarré avec LocalSystem ou LocalNetwork ou Compte Utilisateur une session windows sera toujours ouverte pour son exécution.Les services Microsoft Windows, précédemment appelés services NT, vous permettent de créer des applications à durée d'exécution longue s'exécutant dans leurs propres sessions Windows.
Une session Windows n'est pas forcément associée à un compte utilisateur. Une session Windows peut bien être ouverte par un compte système type LocalSystem ou LocalNetwork. En plus par défaut le service est configuré pour démarrer avec le compte LocalSystem que tu peux changer en faisant un click droit sur le nom de ton service puis Propriétés et onglet Connexion.
Pour ce qui concerne l'interaction avec le bureau, un compte LocalSystem peut bien le faire en cochant la case encadrée en rouge dans l'image que j'ai jointe.
Je reprend clairement ma réponse dans mon post précédent :
Un service Windows a toujours besoin d'une session Windows pour s'exécuter mais cette session n'est pas forcément ouverte par un compte utilisateur car on peut utiliser les comptes systèmes tels que LocalSystem ou LocalNetwork.
bon là je pense que c'est plus clair.
Dernière modification par Invité ; 15/04/2011 à 01h06.
je ne sais pas qui a raison mais on est pas du même avis ...
LocalNetwork, LocalSystem et autres sont des utilisateurs
preuve en est qu'on peut leur donner des droits sur des dossiers/fichiers
l'exécution d'un service se fait peut être dans une session mais ca n'a rien à voir avec les sessions de bureau !
on peut choisir de démarrer un service sur son compte utilisateur, pourtant l'application va démarrer avant l'ouverture de session donc ca n'est pas liée à la session de bureau
quant à la case à cocher, elle est déconseillée et incohérente
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager