none
lista de usuarios locales del windows RRS feed

  • Pregunta

  • Hola buenas noches, como puedo listar los usuarios locales del windows 7, estoy intentado con esta codigo pero me genera este error:

                                 public void ListaUsuarios()
            {


                using (DirectoryEntry d = new DirectoryEntry("WinNT://" + Environment.MachineName.ToString()))
                {
                    DirectorySearcher ds = new DirectorySearcher(d);
                    ds.Filter = ("objectClass=user");
                    foreach (SearchResult s in ds.FindAll())
                    {

                        //display name of each user

                    }
                }
     


            }

    domingo, 27 de mayo de 2018 1:41

Respuestas

  • Listo ya lo resolví:

                              
    var path = string.Format("WinNT://{0},computer", Environment.MachineName);
    
    using (var computerEntry = new DirectoryEntry(path))
    {
        var userNames = from DirectoryEntry childEntry in computerEntry.Children
                        where childEntry.SchemaClassName == "User"
                        select childEntry.Name;
    
        foreach (var name in userNames)
            Console.WriteLine(name);
    }           
    domingo, 27 de mayo de 2018 2:55

Todas las respuestas

  • Listo ya lo resolví:

                              
    var path = string.Format("WinNT://{0},computer", Environment.MachineName);
    
    using (var computerEntry = new DirectoryEntry(path))
    {
        var userNames = from DirectoryEntry childEntry in computerEntry.Children
                        where childEntry.SchemaClassName == "User"
                        select childEntry.Name;
    
        foreach (var name in userNames)
            Console.WriteLine(name);
    }           
    domingo, 27 de mayo de 2018 2:55
  • Por si alguna vez te hace falta, te propongo también otra solución:

    El comando NET USER lista los usuarios locales. Puedes lanzarlo desde un programa en C# usando "Process.Start", y capturar la salida con el RedirectStandardOutput del ProcessStartOptions.

    domingo, 27 de mayo de 2018 8:18
    Moderador