Estou ajudando um de nossos testadores na solução de problemas de configuração em um sistema Windows XP SP3. Nosso aplicativo usa uma variável de ambiente, chamada APP_HOME, para se referir ao diretório onde nosso aplicativo está instalado. Quando o aplicativo é instalado, utilizamos as seguintes variáveis de ambiente:
APP_HOME = C:\application\
PATH = %PATH%;%APP_HOME%bin
Agora, o problema está em que ela está trabalhando com várias versões do mesmo aplicativo. Então, para alternar entre a versão 7.0 e 8.1, por exemplo, ela pode usar:
APP_HOME = C:\application_7.0\ (for 7.0)
e depois alterá-lo para:
APP_HOME = C:\application_8.1\ (for 8.1)
O problema é que, uma vez feita essa alteração, a variável de ambiente PATH aparentemente ainda está analisando a expansão antiga da variável APP_HOME. Então, por exemplo, depois que ela mudou o APP_HOME, o PATH ainda se refere ao diretório bin 7.0.
Alguma idéia de por que isso pode estar acontecendo? Parece-me que a variável PATH está armazenando em cache a expansão da variável de ambiente APP_HOME. Existe alguma maneira de desligar esse comportamento?