Como pegar o usuário que está logado no Windows
10/04/2003
0
Bom dia,
como faço para pegar o usuário que está logado no Windows, a data e a hora via Delphi?
Obrigado!
como faço para pegar o usuário que está logado no Windows, a data e a hora via Delphi?
Obrigado!
Anonymous
Curtir tópico
+ 0
Responder
Posts
10/04/2003
Okama
BufLen := 255;
SetLength(buffer, BufLen);
GetUserName(Pchar(Buffer), BufLen);
SetLength(Buffer, BufLen);
USUARIO := Buffer;
DATA := Date;
HORA := Time;
DATA_HORA := DateTime;
SetLength(buffer, BufLen);
GetUserName(Pchar(Buffer), BufLen);
SetLength(Buffer, BufLen);
USUARIO := Buffer;
DATA := Date;
HORA := Time;
DATA_HORA := DateTime;
Responder
10/04/2003
Dor_poa
Existe na API do BDE uma função chamada DbiGetNetUserName, que retorna o nome
do usuário logado.
function GetUserName:string;
var
Nome: array[0..64] of char;
begin
if DbiGetNetUserName(Nome) <> DBIERR_NONE then
Nome:=´´;
Result:=StrPas(Nome);
end;
ou
function LogUser : String;
{Requer a unit Registry declarada na clausula Uses da Unit}
var
TRegistry;
begin
Registro := TRegistry.Create;
Registro.RootKey := HKEY_LOCAL_MACHINE;
if Registro.OpenKey(´Network\Logon´, false) then
begin
result := Registro.ReadString(´username´);
end;
Registro.Free;
end;
ou ainda..
var
szNetName: Array[0..48] of Char;
iResult: DBIResult;
begin
iResult:= DBIGetNetUserName(szNetName);
if iResult <> DBIErr_None then
DBIError( iResult )
else
Result:= StrPas(szNetName);
end;
Colocar na chamada de Uses de sua Unit as seguintes DCUs : DBITYPES, DBIPROCS, DBIERRS, DBTables e DB.
do usuário logado.
function GetUserName:string;
var
Nome: array[0..64] of char;
begin
if DbiGetNetUserName(Nome) <> DBIERR_NONE then
Nome:=´´;
Result:=StrPas(Nome);
end;
ou
function LogUser : String;
{Requer a unit Registry declarada na clausula Uses da Unit}
var
TRegistry;
begin
Registro := TRegistry.Create;
Registro.RootKey := HKEY_LOCAL_MACHINE;
if Registro.OpenKey(´Network\Logon´, false) then
begin
result := Registro.ReadString(´username´);
end;
Registro.Free;
end;
ou ainda..
var
szNetName: Array[0..48] of Char;
iResult: DBIResult;
begin
iResult:= DBIGetNetUserName(szNetName);
if iResult <> DBIErr_None then
DBIError( iResult )
else
Result:= StrPas(szNetName);
end;
Colocar na chamada de Uses de sua Unit as seguintes DCUs : DBITYPES, DBIPROCS, DBIERRS, DBTables e DB.
Responder
Clique aqui para fazer login e interagir na Comunidade :)