Avatar ·

Cómo obtener el nombre del usuario actual de Windows en C#?

¡Hola a todos! Soy un desarrollador principiante de C# y estoy escribiendo una pequeña aplicación para uso interno en nuestra empresa. Necesito que el programa determine automáticamente quién de los empleados está trabajando actualmente en la computadora y registre ese nombre en un log. He intentado usar `Environment.UserName`, pero parece que no devuelve exactamente lo que necesito. También he oído hablar de `WindowsIdentity.GetCurrent()`, pero no entiendo la diferencia entre estos enfoques. Aquí hay un ejemplo de mi código que pensé que debería funcionar: ```csharp using System; class Program { static void Main() { string currentUser = Environment.UserName; Console.WriteLine("Usuario actual: " + currentUser); } } ``` El problema es que cuando ejecuto la aplicación a través del Programador de tareas como SYSTEM o bajo otra cuenta de servicio, obtengo no el nombre del usuario real que está sentado frente a la computadora, sino el nombre del servicio. Por favor, indíquenme cómo obtener correctamente el nombre del usuario que