Entwickler-Ecke
Windows API - GetUserName
lemmond1976 - Mi 19.03.03 13:29
Titel: GetUserName
Hallo, mal eine Frage zur obengenannten API-Funktion:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| const MAX_COMPUTERNAME_LENGTH = 50;
function TForm1.GetmyUserName: String;
var Buffer: Array[0..MAX_COMPUTERNAME_LENGTH+1] of Char; Size: DWORD; begin size:=1024; Windows.GetUserName(Buffer, Size); Result:=StrPas(Buffer); end; |
Nach einem Klick auf einen Button wird der Username korrekt angezeigt.
Wenn ich die Funktion im OnCreate-Ereignis des Formulars aufrufe, dann steht dort nur Müll.
Danke für Eure Antwort !
Gruss
lemmond
Moderiert von
Klabautermann: Code-Tags hinzugefügt.
smiegel - Mi 19.03.03 13:50
Hallo,
versuche einmal folgendes:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| function GetNetzName(aTyp:Integer):String; var pc :array[0..255] of Char; size:DWord; begin size:=SizeOf(pc); if (WNetGetUser('', pc, size)=NO_ERROR) then Result:=StrPas(pc) else Result:=''; //Result:=UpperCase(Result); end; // GetNetzName |
Delete - Mi 19.03.03 18:13
Geht wunderbar:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| const MAX_COMPUTERNAME_LENGTH = 50;
function GetmyUserName: String; var Buffer: Array[0..MAX_COMPUTERNAME_LENGTH+1] of Char; Size: DWORD; begin size:=1024; Windows.GetUserName(Buffer, Size); Result:=StrPas(Buffer); end;
procedure TForm1.FormCreate(Sender: TObject); begin Caption := GetMyUserName(); end; |
lemmond1976 - Do 20.03.03 11:06
@smiegel: Dein Quellcode funktioniert einwandfrei.
Danke !
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!