Buscar

Pegando as variáveis do sistema (%systemroot%, %username%, etc...)

Código

{Encontrei essa função no Torry's Page (site com dicas sobre delphi) e acredito que seja de grande utilidade por isso resolvi compartilhar}

function GetEnvVarValue(const VarName: string): string;
var
  BufSize: Integer;  // buffer size required for value
begin
  // Get required buffer size (inc. terminal #0)
  BufSize := GetEnvironmentVariable(PChar(VarName), nil, 0);
  if BufSize > 0 then
  begin
    // Read env var value into result string
    SetLength(Result, BufSize - 1);
    GetEnvironmentVariable(PChar(VarName),
      PChar(Result), BufSize);
  end
  else
    // No such environment variable
    Result := '';
end;

//Exemplo de uso:
  with Memo1.Lines.Add do
  begin
    Add(GetEnvVarValue('ALLUSERSPROFILE'));
    Add(GetEnvVarValue('APPDATA'));
    Add(GetEnvVarValue('CLIENTNAME'));
    Add(GetEnvVarValue('CommonProgramFiles'));
    Add(GetEnvVarValue('COMPUTERNAME'));
    Add(GetEnvVarValue('ComSpec'));
    Add(GetEnvVarValue('HOMEDRIVE'));
    Add(GetEnvVarValue('HOMEPATH'));
    Add(GetEnvVarValue('LOGONSERVER'));
    Add(GetEnvVarValue('NUMBER_OF_PROCESSORS'));
    Add(GetEnvVarValue('OS'));
    Add(GetEnvVarValue('Path'));
    Add(GetEnvVarValue('PATHEXT'));
    Add(GetEnvVarValue('PCToolsDir'));
    Add(GetEnvVarValue('PROCESSOR_ARCHITECTURE'));
    Add(GetEnvVarValue('PROCESSOR_IDENTIFIER'));
    Add(GetEnvVarValue('PROCESSOR_LEVEL'));
    Add(GetEnvVarValue('PROCESSOR_REVISION'));
    Add(GetEnvVarValue('ProgramFiles'));
    Add(GetEnvVarValue('SESSIONNAME'));
    Add(GetEnvVarValue('SystemDrive'));
    Add(GetEnvVarValue('SystemRoot'));
    Add(GetEnvVarValue('TEMP'));
    Add(GetEnvVarValue('TMP'));
    Add(GetEnvVarValue('USERDOMAIN'));
    Add(GetEnvVarValue('USERNAME'));
    Add(GetEnvVarValue('USERPROFILE'));
    Add(GetEnvVarValue('windir'));
  end;
 

Publicidade

Vote na dica




Quantidade de votos: 1 voto
Aceitação: 20%


Detalhes da dica

Categoria: Windows
Adicionada dia: 21/05/10
Por: -=|PiRuKa|=-
Visualizada: 8165 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009