65 votes

Comment obtenir le nom d’utilisateur actuellement enregistré à partir d’un service Windows dans .NET ?

J’ai un service Windows qui a besoin du nom d’utilisateur actuellement enregistré. J’ai `` essayé, l’identité Windows et l’authentification par formulaire Windows, mais tous renvoient "Système" car l’utilisateur car mon service s’exécute dans le système privilégié. Existe-t-il un moyen d’obtenir le nom d’utilisateur actuellement connecté sans modifier mon type de compte de service ?

92voto

Tapas Points 869

Il s’agit d’une requête WMI pour obtenir le nom d’utilisateur :

Vous devrez ajouter `` manuellement sous Références.

34voto

Israel Margulies Points 1713

Si vous êtes dans un réseau d’utilisateurs, le nom d’utilisateur sera différent :

Affichera le format : 'Nom d’utilisateur', plutôt que

Affichera le format : 'NetworkName\Username'

Choisissez le format souhaité.

20voto

xanblax Points 36

La solution ManagementObjectSearcher(« SELECT UserName FROM Win32_ComputerSystem ») a bien fonctionné pour moi. MAIS cela ne fonctionne pas si le service est démarré via une connexion Bureau à distance. Pour contourner ce problème, nous pouvons demander le nom d’utilisateur du propriétaire d’un processus interactif qui s’exécute toujours sur un PC: explorer.exe. De cette façon, nous obtenons toujours le nom d’utilisateur actuellement connecté à Windows à partir de notre service Windows:

6voto

Vishal Bedre Points 107

Code modifié de la réponse de Tapas:

2voto

Bhramar Points 88

Juste au cas où quelqu’un chercherait un nom d’affichage d’utilisateur par opposition à un nom d’utilisateur, comme moi.

Voici le régal :

System.DirectoryServices.AccountManagement.UserPrincipal.Current.DisplayName.

Ajoutez une référence `` à dans votre projet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X