Como ler variável de ambiente
25/02/2016
0
No meu sistema, tenho um método que lê uma variável de ambiente, porém ao ler a variável de ambiente o programa não executa o comando que quero, segue o código.
procedure inicio(); var PegaVar: string; begin PegaVar:= GetEnvironmentVariable('DEBUG_INI'); var1:=False; if PegaVar= 'TRUE' then begin var1:= true; Metodo(); end; end;
DEBUG_INI é minha variável de ambiente, se ela está com o valor "TRUE", deveria chamar o método, mas não está chamando. Alguém sabe o que pode impedir o código de ler essa variável corretamente?
OBS: Tentei com outras variáveis de ambiente e deu certo, apenas com essa que eu criei que não funciona
Gabriel
Post mais votado
25/02/2016
Kra aqui funciono bl.
Nas propriedades do sistema 'edita' o nome da variável e verifica se não há espaço no inicio ou no final. Qualquer coisa tenta excluir e incluir novamente esta variável. Lembre-se que qualquer alteração em se tratando de variáveis de ambiente a máquina deverá ser reiniciada.
Marco Antônio
Mais Posts
25/02/2016
Gabriel
Sim, para as duas perguntas
25/02/2016
Gabriel
25/02/2016
Crist
function GetEnvVarValue(const VarName: string): string;
var
BufSize: Integer;
begin
BufSize := GetEnvironmentVariable(
PChar(VarName), nil, 0);
if BufSize > 0 then
begin
SetLength(Result, BufSize - 1);
GetEnvironmentVariable(PChar(VarName),
PChar(Result), BufSize);
end
else
Result := '';
end;
26/02/2016
Gabriel
Fiz exatamente isso e funcionou, obrigado pela ajuda pessoal!
Clique aqui para fazer login e interagir na Comunidade :)