Rubrik: System/Windows · Computer/Benutzer/Ländereinstellungen | VB-Versionen: VB.NET | 02.06.06 |
Benutzername und Benutzergruppe ermitteln (VB.NET 2005) Dieser Tipp verrät, wie sich in VB 2005 der Benutzername ermitteln lässt und welcher Benutzergruppe der aktuelle User angehört. | ||
Autor: Dieter Otter | Bewertung: | Views: 32.619 |
www.tools4vb.de | System: WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Mit Hilfe der My.User Klasse lassen sich unter VB.NET sehr schnell sehr viele Informationen sammeln, so z.B. auch der Name des aktuell angemeldeten Benutzers und auch die Benutzergruppe, die der User angehört.
Imports System.Security.Principal Public Class Form1 Private Function UserName() As String ' Benutzername ermitteln Dim sUser As String = My.User.Name Return (sUser.Substring(sUser.IndexOf("\") + 1)) End Function Function IsUserAdmin() As Boolean ' Admin? Dim oUser As WindowsPrincipal = My.User.CurrentPrincipal Return (oUser.IsInRole(WindowsBuiltInRole.Administrator)) End Function Function IsUserPowerUser() As Boolean ' Hauptbenutzer? Dim oUser As WindowsPrincipal = My.User.CurrentPrincipal Return (oUser.IsInRole(WindowsBuiltInRole.PowerUser)) End Function Function IsUserNormalUser() As Boolean ' Benutzer mit eingeschränkten Rechten? Dim oUser As WindowsPrincipal = My.User.CurrentPrincipal Return (oUser.IsInRole(WindowsBuiltInRole.User)) End Function Function IsUserGuest() As Boolean ' Gast? Dim oUser As WindowsPrincipal = My.User.CurrentPrincipal Return (oUser.IsInRole(WindowsBuiltInRole.Guest)) End Function End Class
Aufrufbeispiel:
MsgBox("Benutzername: " & UserName()) ' Ist Benutzer als Admin angemeldet? If IsUserAdmin() Then ... End If