
Há algum tempo, alterei manualmente a WINDIR
variável de ambiente para testar algo em um programa legado com o qual estava trabalhando (deveria ter feito isso em uma VM em vez de em minha área de trabalho:/mas agora é tarde demais)
Então, por algum motivo, agora %WINDIR%
não resolve mais para c:\windows, mas para% SystemRoot%. Na linha de comando:
echo %WINDIR% outputs %SystemRoot%
e
echo %SystemRoot% outputs C:\windows
Não ser capaz de resolver o WINDIR está me causando todo tipo de dor de cabeça. Tentei definir o valor WINDIR
explicitamente para c:\windows
naquele console que o Windows fornece, mas sem sucesso. Também tentei alterar manualmente o valor da chave de registro windir em
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\windier
e
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Environment\windir
Mas ainda sem sorte. Alguém já viu esse comportamento antes?
esqueci de mencionar que isso está no Windows 7 Enterprise ed
Responder1
Por favor, verifique o tipo do valor que você tem como Windir
. Você provavelmente mudou inadvertidamente de REG_EXPAND_SZ
para REG_SZ
. Você tem que fazer isso diretamente no registro (os painéis GUI não mostrarão a diferença):
Inicie o editor do Registro, navegue até HKEY_LOCAL_MACHINE\system\currentControlSet\Control\Session Manager\Environment
.
Verifique se windir
tem um tipo de REG_EXPAND_SZ
.
Caso contrário, recrie a entrada para ser: windir REG_EXPAND_SZ %SystemRoot%
Faça logoff/logon e verifique se funciona
Responder2
Correção!%SystemRoot%
é o valor padrão. Portanto, esta variável está definida corretamente em seu sistema.
Clique com o botão direito emComputador - Configurações - Configurações avançadas do sistema - Avançado - Variáveis de ambiente. Na segunda parte dessa janela (em Variáveis de Ambiente) você pode encontrar sua variávelventoapontando para%systemroot%
. Mude para%SystemRoot%
, que é o valor padrão e teste se ainda ocorrer erros.