2009-07-20 20 views
2

Ich schreibe Software in VB .NET (2005), die die Windows-Benutzerinformationen als Anmeldedaten verwendet - nur den Benutzernamen. Ich habe Environment.UserName gefunden, das für den Benutzernamen funktioniert (wie Sie erwarten würden).VB .NET: Angemeldete Benutzerinformationen

Ich brauche jedoch weitere Informationen - ich brauche den vollständigen Namen des Benutzers (wie im Startmenü angezeigt). Es scheint, dass diese Informationen irgendwo gespeichert werden, da Windows sie für Dinge wie Berechtigungen für Dateifreigaben verwenden kann.

Ich habe gehört, es gibt Aufrufe in user32.dll, die dies tun können, aber ich möchte eine .NET-Methode, wenn es überhaupt möglich ist. Ich habe auch eine SID für den Benutzer, wenn das überhaupt hilft.

Kennt jemand den besten Weg, um diese zusätzlichen Informationen zu erhalten?

Antwort

1

Es scheint, dass der Namespace System.DirectoryServices genau das ist, wonach ich suche.

scheint immer, dass Sie die Antwort finden direkt nach :)

Für die Zukunft stellen:

Dim ent As New DirectoryServices.DirectoryEntry("WinNT://<Domain>/<Username>") 
Dim props As DirectoryServices.PropertyCollection = ent.Properties 
Debug.Print(props.Item("FullName").Value)