Wie kann ich eine Liste Lokaler Windows-Benutzer (Nur Benutzer angezeigt, die in der windows-Anmeldebildschirm)
Wie kann ich eine Liste Lokaler Windows-Benutzer (Nur Benutzer angezeigt, die in der windows-Anmeldebildschirm)
Ich habe versucht, viele Methoden, die mit Windows-Prinzip library & WMI Select-Befehle. Ich bekomme den Administrator, Guest & einige andere bizarre Konten (VUSRNEIL-DELL, $HOMEGROUPUSER, ASPNET...usw.)
Keiner dieser 3 Benutzer-Konten erscheinen auf dem Anmeldebildschirm. Wie kann ich Unterscheiden zwischen dieser Benutzer-Typen?
Ich bin Programmierung in C#
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie einfach einen Verweis auf
System.Management
in einer Konsole-Anwendung, und versuchen, diesen code:Wenn Sie mithilfe von WMI-Abfragen
Win32_UserAccount
können Sie anzeigen, nur die Elemente, die den folgenden Bedingungen:AccountType
hat dieUF_NORMAL_ACCOUNT
Flagge.Disabled
istfalse
.Lockout
istfalse
.LocalAccount
isttrue
.SIDType
istSidTypeUser
.Wenn Sie nicht verwenden können, WMI (oder Sie wollen nicht, es zu benutzen), müssen Sie ein wenig mehr Arbeit, im Grunde müssen Sie NetGroupGetUsers Funktion zum auflisten aller Benutzer. Sehen dieser Artikel auf CodeProject für ein Beispiel.
Wenn Sie möchten, verwenden Sie eine wrappered Lösung, NuGet hat die "Kontinuierliche.Management" - Paket, das ist ein open-source-Projekt: https://github.com/jarzynam/continuous
Dadurch erhalten Sie eine Liste aller Benutzerkonten, die Domäne, den vollständigen Namen und die SID.