如何获取Windows启动用户名?

时间:2014-03-05 03:54:58

标签: c# .net

好吧,我之前发布了这个问题,但在标记为重复之前我没有得到正确的答案。我认为这是一个不同的问题,我使用的所有方法都会返回错误的输出。

我想知道如何解决这个问题。示例输出在这里:

enter image description here

代码:

Imports System.Security.Principal
Imports System.Threading
Imports System.IO
Imports System

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        MsgBox("1: " & System.Security.Principal.WindowsIdentity.GetCurrent().Name.ToString & vbCrLf & _
               "2: " & Environment.UserDomainName & vbCrLf & _
               "3: " & WindowsIdentity.GetCurrent().Name & vbCrLf & _
                "4: " & Thread.CurrentPrincipal.Identity.Name & vbCrLf & _
               "5: " & Environment.UserName & vbCrLf & _
               "6: " & My.User.Name & vbCrLf &
                "7: " & My.Computer.Name)

        ' System.DirectoryServices.AccountManagement.UserPrincipal.Current.DisplayName()
    End Sub

End Class

我甚至不知道此Windows用户名的正确术语/名称。

1 个答案:

答案 0 :(得分:2)

使用System.DirectoryServices.AccountManagement.UserPrincipal.Current.DisplayName

正如此主题的回复所述,您可以通过在项目中添加对System.DirectoryServices.AccountManagement.dll的引用来使用此功能。