Und was steht in bufferlen drin, wenn GetuserName fehl schlägt?
Es steht dann garnichts drin ('').
GetUserName (Ohne A oder W) vom Delphi eine compilerabhängige Weiterleitung und die ist explizit mit PChar deklariert.
Das heißt also, ich müsste via "GetMem" erst einmal genügend Speicher anfordern, damit in Buffer was drin steht?
Wenn dem so ist, dann verstehe ich auch, weshalb man meistens statt PChar ein Array[0..255] of Char vorfindet.
Denn laut Doku ist die Größe von PChar 8 Bit, was ja einer Maximallänge von 256 Zeichen entspricht, welche ja äquivalent zu den 0..255 ist.