Используя этот простой тестовый пакетный скрипт:
@echo off
echo %ProgramFiles%
echo %ProgramFiles(x86)%
мой результат:
"C:\Program Files"
C:\Program Files (x86)
Одна переменная заключена в кавычки, а другая нет? Это какая-то ошибка или просто недосмотр от моего имени?
Странно, я не могу воспроизвести это на своей машине (Windows Vista 64-бит SP 1). Мой результат
C:\Program Files
C:\Program Files (x86)
Вы уверены, что не вставляли кавычки в свой эхо-запрос?
На W2k8 x64 получаю:
c:\temp>echo %ProgramFiles% & echo %ProgramFiles(x86)%
C:\Program Files
C:\Program Files (x86)
Если вы наберете «set», вы увидите, что это за переменные среды. Я получил:
c:\temp>set
...
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
...