Há um problema definido com a expansão de variáveis de ambiente na variável PATH quando a variável se expande para um caminho que contém espaços.
Criamos nossas próprias variáveis no nível do sistema, como "OUR_ROOT = c: \ MyRoot" e, em seguida, usamos no PATH do sistema como "PATH =;% OUR_ROOT% \ bin;" e que é expandido corretamente para "PATH =; c: \ MyRoot \ bin;". Até agora não há problema.
Mas, no Windows 7 (32 bits), eu tinha um produto instalado e criava variáveis de ambiente do sistema como esta:
STUDIO_BIN=C:\program files\Company Name\Product Name 10.4\bin
e adicionou à variável PATH do sistema:
PATH=<other path elements>;%STUDIO_BIN%;<more path elements>
Mas os valores PATH mostrados no CMD continham "% STUDIO_BIN%;" e não o caminho expandido. O valor em Meu computador> Propriedades> Avançado> Env.Vars também permaneceu não expandido. Isso significava que não podia executar programas que exigiam uma DLL nesse diretório.
Alterando apenas STUDIO_BIN (via Meu computador> Propriedades> Avançado ...> Env Vars) para um nome sem espaços incorporados:
STUDIO_BIN=C:\ProductName\bin
e, em seguida, reiniciando a janela CMD, o PATH é agora:
PATH=<other path elements>;C:\ProductName\bin;<more path elements>
Outra solução é editar suficientemente a variável do sistema que você está usando no PATH usando o diálogo Meu Computador> Propriedades> Avançado ...> Variáveis de Ambiente. Tentei adicionar um caractere e removê-lo para fazer uma 'alteração' e, em seguida, sair OK, iniciei um novo prompt de CMD e PATH NÃO foi expandido corretamente. Tentei excluir parte do caminho para que ele fosse
STUDIO_BIN=C:\Program Files\Company Name
(omitindo "Nome do produto 10.4") e eis que o próximo prompt do CMD mostrou PATH com STUDIO_BIN expandido corretamente!
Estranhamente, se eu voltasse e adicionasse o "Product Name 10.4" ao STUDIO_BIN (incluindo todos os espaços que estavam originalmente lá antes de começar a mexer com ele) e PATH AINDA continuaria sendo expandido corretamente.
Evidentemente, com alterações suficientes em seu conteúdo, a variável PATH passa por um processamento extra na caixa de diálogo Variáveis de ambiente que permite que ela funcione. O processamento não é feito quando a variável foi adicionada pelo instalador do produto (que provavelmente apenas modificou o PATH no registro diretamente).
Estou quase certo de que este foi um problema com o XP também. Ele apenas ressurgiu para mim no Windows 7, quando eu estava montando uma nova máquina de desenvolvimento. Aparentemente, não foi corrigido pela Microsoft.
Aparentemente, até as variáveis definidas pelo MS, como% ProgramFiles%, não serão expandidas corretamente no PATH.
Esta página fornece uma resposta possível se você estiver configurando o PATH por meio da linha de comando ou arquivo em lote. (Coloque o comando inteiro após SET entre aspas.) Não sei qual instalador o produto que eu instalei utilizou para definir as variáveis de ambiente, mas evidentemente passou por todo o processamento necessário para expandir adequadamente os caminhos com espaços.
Então - para resumir, você pode:
alterar os caminhos (e mover todos os arquivos associados) para caminhos sem espaços, ou
edite as variáveis que não estão conseguindo se expandir na caixa de diálogo Variáveis de ambiente (alterando-as o suficiente para que elas sejam processadas corretamente - não sei o quanto é suficiente).