Here is the code that I use in 2003. I probably couldn't explain how it works, but it does :-)
Code:
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Public Function localUserName() As String
Dim m_myBuf As String * 25
Dim m_Val As Long, UserName As String
m_Val = GetUserName(m_myBuf, 25)
localUserName = Left(m_myBuf, InStr(m_myBuf, Chr(0)) - 1)
End Function
HTH
Mike
Mike
EchoVue.com