Autor |
Beitrag |
volvox
      
Beiträge: 112
WIN XP
Delphi 7 Personal
|
Verfasst: Sa 02.01.10 18:59
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
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 02.01.10 19:01
Die Funktion ist immer die selbe. Was möchtest du haben? Den Benutzernamen.
Hmm, was heißt das auf englisch? Richtig... GetUserName...
msdn.microsoft.com/e...ibrary/ms724432.aspx
|
|
volvox 
      
Beiträge: 112
WIN XP
Delphi 7 Personal
|
Verfasst: Sa 02.01.10 19:30
versteh ich nicht so ganz wie ich den Namen dann als String bekomme...
Variable.GetUserName oder wie?
|
|
jaenicke
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 02.01.10 19:39
volvox hat folgendes geschrieben : | Variable.GetUserName oder wie? |
 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:
www.delphipraxis.net/post34095.html#34095
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: 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 
      
Beiträge: 112
WIN XP
Delphi 7 Personal
|
Verfasst: 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
      
Beiträge: 19312
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Sa 02.01.10 21:35
|
|
volvox 
      
Beiträge: 112
WIN XP
Delphi 7 Personal
|
Verfasst: So 03.01.10 21:28
Oder so  :
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; |
|
|