Get the username of the currently logged on user.
Option Explicit
Private Const UNKNOWN = "(Value Unknown Because System Call Failed)"
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Public Function GetCurrentUserName() As String
Dim l As Long
Dim sUser As String
sUser = Space$(255)
l = GetUserName(sUser, 255)
' strip null terminator
If l <> 0 Then
GetCurrentUserName = Left(sUser, InStr(sUser, Chr(0)) - 1)
Else
Err.Raise Err.LastDllError, , "A system call returned an error code of " & Err.LastDllError
End If
End Function