Página 1 de 1

Setar Variável de Ambiente

Enviado: 06 Ago 2012 17:41
por asimoes
Senhores,

Tem como setar uma variável de ambiente de dentro de uma aplicação?
Temos o getenv que lê uma variável de ambiente, existe alguma setenv ou equivalente?

Setar Variável de Ambiente

Enviado: 06 Ago 2012 19:10
por rossine
Olá ASimoes,

Se você está usando o harbour, você pode usar a função hb_setEnv()

Exemplo:

hb_setEnv( "TMP", "c:\tmp" )

T+

Rossine.

Setar Variável de Ambiente

Enviado: 06 Ago 2012 19:20
por marcosgambeta
rossine escreveu:Se você está usando o harbour, você pode usar a função hb_setEnv()
Apenas para complementar a resposta:

1) a função retorna .t. ou .f., indicando sucesso ou falha na definição da variável

2) se o segundo parâmetro for omitido, a variável é excluída

Setar Variável de Ambiente

Enviado: 06 Ago 2012 19:21
por asimoes
Rossine,

No meu caso preciso para xharbour.

Setar Variável de Ambiente

Enviado: 06 Ago 2012 19:28
por marcosgambeta
asimoes escreveu:No meu caso preciso para xharbour.
Pesquisei por 'setenv' e achei esta função na what32, arquivo _winmisc.c:

Código: Selecionar todos

// WINBASEAPI BOOL WINAPI SetEnvironmentVariableA( IN LPCSTR lpName, IN LPCSTR lpValue );
HB_FUNC( SETENVIRONMENTVARIABLE )
{
   hb_retl( SetEnvironmentVariableA( (LPCSTR) hb_parcx(1), (LPCSTR) hb_parcx(2) ) ) ;
}

Setar Variável de Ambiente

Enviado: 06 Ago 2012 19:43
por asimoes
Valeu Marcos,

Amanhã vou testar no trabalho, informarei o resultado.

[]

Setar Variável de Ambiente

Enviado: 07 Ago 2012 15:51
por asimoes
Olá Marcos,

Funcionou belezinha.

Obrigado.