Você está aqui: Delphi ::: Dicas & Truques ::: Sistema |
Obtendo o nome de usuário do computadorQuantidade de visualizações: 12866 vezes |
Em algumas situações nós precisamos obter o nome do usuário do sistema, ou seja, o usuário atualmente logado no Windows. Isso pode ser feito por meio do uso da função GetUserName() da API do Windows. Veja sua assinatura:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- BOOL GetUserName( LPTSTR lpBuffer, LPDWORD lpnSize ); Veja que esta função recebe como argumentos um buffer de caracteres e seu tamanho, ou seja, a quantidade de caracteres contidos no buffer e que serão usados para armazenar o nome do usuário. O tamanho do buffer deve ser superior ou igual a UNLEN + 1. Se a função GetUserName() retornar verdadeiro, o parâmetro lpnSize guardará a quantidade de caracteres contidos no valor resultante. Veja o exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
function GetUserFromWindows: string;
var
buffer: array[0..255] of char;
size: dword;
begin
size := 256;
if GetUserName(buffer, size) then
Result := buffer
else
Result := 'Desconhecido';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
// vamos obter o nome do usuário do Windows
ShowMessage(GetUserFromWindows());
end;
Se o nome do usuário não puder ser obtido, uma string com o valor "Desconhecido" será retornada. Veja outra variação da função personalizada GetUserFromWindows(): ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
function GetUserFromWindows: string;
var
userName : string;
userNameLen : Dword;
begin
userNameLen := 255;
SetLength(userName, userNameLen) ;
if GetUserName(PChar(UserName), UserNameLen) then
Result := Copy(UserName, 1, UserNameLen - 1)
else
Result := 'Desconhecido';
end;
Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





