The returned string is a C string (null terminated). So, after the call to GetUserName:
UserName = substr(UserName, at(chr(0), username) - 1)
Vlad
>You need to add an @ in the declare to tell it the string argument is passed by reference. Also the second argument tells the api how big the buffer is:
>
>
BOOL GetUserName(
> LPTSTR lpBuffer, // address of name buffer
> LPDWORD nSize // address of size of name buffer
>);
>
>
>declare GetUserName in win32api string @ sBuffer, integer @ nSize
>UserName = space(25)
>nSize = len( UserName )
>GetUserName( @UserName, @nSize )
>
>
>>Hi there,
>>
>>I was trying to use GetUserName call from win32api and all I got in return was a blank space. Can someone help me out with the code?
>>
>>In the init() event
>>
>>Declare GetUserName in Win32api string, integer
>>
>>UserName = space(25)
>>
>>=GetUserName( @UserName, 1 )
>>
>>Return blank. Why?
>>
>>Thanks