Does it work better if you get rid of the ByVal for the string variable in 
the GetUserName() declaration?

On Wed, 14 Jul 2004, Jay C Russell wrote:

> >From a previous post by Jacques Paris,  I created a program to return the
> current user name logged into Windows.
> I am running Windows 2k with Mapinfo 7.0.   When I test the function the
> slength returned is of the correct length, but the username
> value is blank.  Help appreciated as always!  Source code included below.
> 
> Thanks,
> Jay Russell
> 
> 
> 
> Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal
> lpBuffer As String, nSize As Integer) As Integer
> 
> Sub FindUser
> 
> Dim username As String ' receives name of the user
> 
> 
> Dim slength As Integer ' length of the string
> 
> 
> Dim retval As Integer ' return value
> 
> 
> ' Create room in the buffer to receive the returned string.
> 
> 
> username = Space$(255) ' room for 255 characters
> 
> 
> slength = 255 ' initialize the size of the string
> 
> 
> ' Get the user's name and display it.
> 
> 
> retval = GetUserName(username, slength) ' slength is now the length of the
> returned string
> 
> 
> username = Left$(username, slength - 1) ' extract the returned info from
> the buffer
> 
> 
> ' (We subtracted one because we don't want the null character in the
> trimmed string.)
> 
> 
> Print "The name of the current user is "+ username
> 
> 
> End Sub 'FindUser
> 
> 
> ---------------------------------------------------------------------
> List hosting provided by Directions Magazine | www.directionsmag.com |
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> Message number: 12607
> 


---------------------------------------------------------------------
List hosting provided by Directions Magazine | www.directionsmag.com |
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
Message number: 12613

Reply via email to