Lazarus: получение текущего логина пользователя
Решим задачу кросплатформенно:
procedure TForm1.GetUserLogin(Sender: TObject);
{$IFDEF MSWINDOWS}
const
envVar = 'USERNAME';
{$ENDIF}
{$IFDEF UNIX}
envVar = 'USER';
{$ENDIF}
begin
user_login:=SysUtils.GetEnvironmentVariable(envVar);
MessageDlg(user_login, mtInformation,[mbOk],0);
end;
А ещё можно упростить эту процедуру до такой функции:
function GetUserLogin:string;
begin
{$IFDEF MSWINDOWS}
Result:=GetEnvironmentVariable(‘USERNAME’);
{$ELSE}
Result:=GetEnvironmentVariable(‘USER’);
{$ENDIF}
if result=» then result:=’UnknownUser’;
end;