Hilfe lesen hilft:
Zitat:
Return Value
If the function succeeds, the return value is a nonzero value, and the variable pointed to by lpnSize contains the number of TCHARs copied to the buffer specified by lpBuffer, including the terminating null character.
Guck dir mal dazu
SetStringt an.
Das wird ja immer schlimmer:
Delphi-Quellcode:
function GetCurrUserName: string;
var
Size : DWORD;
begin
Size := MAX_COMPUTERNAME_LENGTH + 1;
SetLength(Result, Size);
if GetUserName(PChar(Result), Size) then
SetLength(Result, Size)
else
Result := '';
end;
Man muss den Buffer auf die Tatsächliche Länge des Benutzernamens kürzen.