
Некоторое время назад я вручную изменил WINDIR
переменную окружения, чтобы протестировать что-то в устаревшей программе, с которой я работал (надо было сделать это на виртуальной машине, а не на моем рабочем столе :/, но теперь уже слишком поздно)
Так что по какой-то причине теперь %WINDIR%
не разрешается в c:\windows, а в %SystemRoot%. Из командной строки:
echo %WINDIR% outputs %SystemRoot%
и
echo %SystemRoot% outputs C:\windows
Невозможность разрешить WINDIR вызывает у меня всяческие головные боли. Я пытался WINDIR
явно задать значение c:\windows
в том, что предоставляет консоль Windows, но безрезультатно. Я также пытался вручную изменить значение ключа реестра Windir на
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\windier
и
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Environment\windir
Но все равно не повезло. Кто-нибудь видел такое поведение раньше?
забыл упомянуть, что это на Windows 7 Enterprise ed
решение1
Проверьте тип значения, которое у вас есть как Windir
. Вероятно, вы непреднамеренно изменили его с REG_EXPAND_SZ
на REG_SZ
. Вам нужно сделать это непосредственно в реестре (панели графического интерфейса не покажут вам разницу):
Запустите редактор реестра, перейдите к HKEY_LOCAL_MACHINE\system\currentControlSet\Control\Session Manager\Environment
.
Проверьте, что windir
тип REG_EXPAND_SZ
.
Если нет, заново создайте запись: windir REG_EXPAND_SZ %SystemRoot%
Выйдите из системы/войдите в систему и проверьте, работает ли она.
решение2
Исправление!%SystemRoot%
это значение по умолчанию. Итак, эта переменная установлена правильно в вашей системе.
Щелкните правой кнопкой мышиКомпьютер - Настройки - Дополнительные параметры системы - Дополнительно - Переменные среды. Во второй части этого окна (в разделе «Переменные среды») вы можете найти свою переменную.виндируказывает на%systemroot%
. Измените его на%SystemRoot%
, что является значением по умолчанию, и проверьте, продолжают ли возникать ошибки.