Entwickler-Ecke
Sonstiges (Delphi) - Windows Benutzernamen auslesen
volvox - Sa 02.01.10 18:59
Titel: Windows Benutzernamen auslesen
Hi.
Ich möchte in mein Programm eine Funktion einbauen die den Windows Benutzernamen ausliest und als string speichert. Für nen Einzelplatzrechner hätte ich noch ne grobe Idee, aber mein Programm ist für unser Büro gedacht wo sich jeder mit Nutzernamen und Passwort über nen Server einloggt (WinXP Professional). Hat jemand ne Idee wo ich diese Information herbekomme?
Und wie siehts beispielsweise bei Win7 aus.
Vielen Dank
volvox - Sa 02.01.10 19:30
versteh ich nicht so ganz wie ich den Namen dann als String bekomme...
Variable.GetUserName oder wie?
jaenicke - Sa 02.01.10 19:39
volvox hat folgendes geschrieben : |
Variable.GetUserName oder wie? |
:shock: Du solltest dir dringend die allerersten Grundlagen anschauen...
GetUserName ist eine Funktion und Variable kein Objekt mit GetUserName als Methode...
Ein Beispiel in Delphi findest du hier:
http://www.delphipraxis.net/post34095.html#34095
Delete - Sa 02.01.10 21:06
Es gibt übrigens nicht den Benutzernamen. Es können auch Benutzer remote angemeldet sein zum Beispiel.
GETUSERNAME liefert dir nur den Benutzer, den den aktuellen Thread ausführt. Es können aber auch andere Benutzer eine anderen Thread des gleichen Prozesses ausführen über
IMPERSONATELOGGEDONUSER zum Beispiel.
Also, welchen Benutzer willst?
volvox - Sa 02.01.10 21:11
Den des aktuell angemeldeten Benutzers. Es wäre nett wenn mir mal jemand die komplette Procedure dafür posten könnte (Nutzername in string X speichern), weil ich so aufgrund meiner eher schlechten Delphi-Kenntnise leider nicht weiterkomme.
jaenicke - Sa 02.01.10 21:35
volvox hat folgendes geschrieben : |
Den des aktuell angemeldeten Benutzers. |
Das können ja mehrere sein, hat
Luckie doch gerade geschrieben...
volvox hat folgendes geschrieben : |
Es wäre nett wenn mir mal jemand die komplette Procedure dafür posten könnte (Nutzername in string X speichern) |
*hust* *räusper*
volvox - So 03.01.10 21:28
Oder so :D :
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| function GetUsername: string; var Buffer: array[0..255] of Char; Size: DWord; begin Size := SizeOf(Buffer); if not Windows.GetUserName(Buffer, Size) then RaiseLastOSError; SetString(Result, Buffer, Size - 1); end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 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!