Função para obter os valores das variáveis de ambiente do Windows.
Esta função recebe o nome da variável de ambiente
a qual deve-se acessar e retorna uma string com seu valor.
Caso a variável não seja localizada, a função retorna uma
String vazia.
É necessário estar declarado Windows na seção uses,
em versões unicode declare Winapi.Windows.
Abaixo segue o código fonte da função:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| function GetValVarAmbiente(const VarName: string): string;
var
I: Integer;
begin
Result := '';
{ Obtém o comprimento da variável. }
I := GetEnvironmentVariable(PChar(VarName), nil, 0);
if (I > 0) then
begin
SetLength(Result, I);
GetEnvironmentVariable(PChar(VarName), PChar(Result), I);
end;
end; |
function GetValVarAmbiente(const VarName: string): string;
var
I: Integer;
begin
Result := '';
{ Obtém o comprimento da variável. }
I := GetEnvironmentVariable(PChar(VarName), nil, 0);
if (I > 0) then
begin
SetLength(Result, I);
GetEnvironmentVariable(PChar(VarName), PChar(Result), I);
end;
end;
Exemplos de uso
1
2
3
4
5
6
7
8
9
10
11
12
| procedure TForm1.Button1Click(Sender: TObject);
begin
// Verificando a pasta do windows.
ShowMessage('Diretório do Windows:' + GetValVarAmbiente('windir'));
// Verificando a pasta de arquivos temporários.
ShowMessage('Diretório do Windows:' + GetValVarAmbiente('TEMP'));
// Verificando a arquitatura do processador.
ShowMessage('Diretório do Windows:' +
GetValVarAmbiente('PROCESSOR_ARCHITECTURE'));
end; |
procedure TForm1.Button1Click(Sender: TObject);
begin
// Verificando a pasta do windows.
ShowMessage('Diretório do Windows:' + GetValVarAmbiente('windir'));
// Verificando a pasta de arquivos temporários.
ShowMessage('Diretório do Windows:' + GetValVarAmbiente('TEMP'));
// Verificando a arquitatura do processador.
ShowMessage('Diretório do Windows:' +
GetValVarAmbiente('PROCESSOR_ARCHITECTURE'));
end;
-
InfusTec
-
5.240 views
- 0 comentários
- 26 de março de 2015
Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!
Posts Relacionados - Continue Aprendendo