- Simple código de ejemplo de como obtener el usuario actual de un Sistema Windows o Linux.
Información previa:
- Compilado empleando las siguientes versiones de Lazarus:
Windows: 0.9.28.2
Linux: 0.9.26
- El código compila y se ejecuta tanto bajo Windows como en Linux, sin ninguna modificación.
Información de testeo:
- Probado con exito bajo un sistema Ms Windows XP (SP3) y bajo un Sistema Fedora "Leonidas".
Pasos:
1- En Lazarus abrimos un nuevo Proyecto.
2- Añadimos un Tbutton y un TLabel al Formulario.
3- Ponemos a False la propiedad "Visible" de la Label.
4- Incrustamos las siguientes lineas de código en Unit1 bajo la sección "implementation"
delphi
{$IFDEF MSWINDOWS} Uses Windows; Function JLPGetUserName : string; Var userNameBuffer : array[0..255] of char; sizeBuffer : DWord; Begin SizeBuffer := 256; getUserName(userNameBuffer, sizeBuffer); result := string(userNameBuffer); End; {$ENDIF MSWINDOWS} {$IFDEF LINUX} Function JLPGetUserName : string; Begin Result := GetEnvironmentVariable('USERNAME'); If Result = '' then Result := GetEnvironmentVariable('USER'); End; {$ENDIF LINUX}
5- En el evento Click del botón añadimos las siguientes lineas de código:
delphi
Label1.Caption:='Usted está trabajando en el Sistema como: '+JLPGetusername; Label1.Show;
Espero que les sea de utilidad.
Saludos.