Переменная среды WINDIR преобразуется в %SystemRoot%, а не в C:\windows

Переменная среды WINDIR преобразуется в %SystemRoot%, а не в C:\windows

Некоторое время назад я вручную изменил 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%, что является значением по умолчанию, и проверьте, продолжают ли возникать ошибки.

Связанный контент