J'ai des services Windows écrits en C#. Quand quelqu'un arrête ou commence le service, je voudrais pouvoir déterminer qui c'était et enregistrer cette information.Est-il possible d'enregistrer qui a démarré ou arrêté un service Windows?
J'ai essayé d'enregistrer Environment.UserName
mais cela évalue SYSTEM même sur ma machine locale.
De plus, pour l'instant, ces services s'exécutent sur le serveur Windows 2000.
Oui! C'est ce que je cherchais, j'ai juste besoin d'un moyen de savoir qui a arrêté le service et il est là - dans le journal des événements système – HitLikeAHammer
'Dans l'Observateur d'événements (Panneau de configuration | Outils d'administration | Observateur d'événements) sur le système Je ne vois rien de ce genre: tout ce que je vois est un message du type "Le service Workstation est entré dans l'état de fonctionnement", mais rien à propos du processus/service qui a provoqué son démarrage, même dans les détails.La chose la plus proche d'une cause est le champ * Source * qui autre que Windows Update, est à peu près toujours le contrôleur de service (bien duh) qui ne dit rien sur qui/quoi a demandé au SC d'exécuter le service. – Synetech
C'est vrai, je viens de confirmer que ma réponse de plus de quatre ans ne fonctionne plus de la même manière.Il semble que le Gestionnaire de contrôle des services ne consigne plus ses propres événements de démarrage et d'arrêt, ou du moins pas au même endroit. (Je viens de réessayer dans Windows 8. J'ai peut-être été sur Windows XP lorsque j'ai écrit cette autre réponse, mais je ne suis pas sûr.) – JMD