Eike Lange schrieb:
Hallo zusammen!
Weiss jemand von Euch, wie man den _Namen_ des aktuellen Benutzers herausbekommen kann?
Ähnlich wie `foo := UserID (false);', aber mit dem Namen und nicht der Nummer.
Billige Methode: GetEnv ('LOGNAME') / GetEnv ('USER').
(Je nach System kann beides gesetzt sein. Im Zweifelsfall sollte man glaube ich LOGNAME den Vorrang geben. Dies kann natürlich leicht vom User gefälscht werden.)
Richtige Methode:
var PasswordEntry: TPasswordEntry;
if GetPasswordEntryByUID (UserID (False), PasswordEntry) then UserName := PasswordEntry.UserName^ else (evtl. noch GetEnv probieren)
Wenn Du den "echten Namen" (realname, nicht username), entsprechend PasswordEntry.RealName^ (keine entsprechende Environment-Variable vorhanden).
Frank