1

Я только что испортил мой Windows 7 Enterprise 64-bit.

Я попытался установить CMake - и во время установки я получил сообщение об ошибке, в котором сказано, что он не может установить переменную path, потому что он слишком длинный (я не могу воспроизвести точное сообщение об ошибке, так как установщик больше не запускается),

Итак, что я тогда сделал - открыл панель управления -> Система и безопасность -> Система -> Расширенные настройки системы -> Переменные среды

и я добавил папку cmake bin вручную в конец системной переменной PATH и сохранил.

Но хорошо - теперь ничего не работает. Если я снова пытаюсь открыть «Расширенные настройки системы», я получаю сообщение об ошибке

C:\Windows\system32\system32\systempropertiesadvanced.exe
The filename or extension is too long.

если я попытаюсь открыть regedit

C:\Windows\regedit.exe
The filename or extension is too long.

Я все еще могу открыть командную строку, но не повышен. Если я попытаюсь запустить cmd как администратор, я получу ту же ошибку.

Я не хочу перезагружать свой компьютер, так как думаю, что он не сможет загрузиться в текущем состоянии. Я не знаю, как изменить мою переменную Path обратно на то, что было раньше

//редактировать:

Теперь я вижу немного лучше, что я сделал не так.

Помимо расширения переменной пути, я также установил новую системную переменную Envrionment

OPENCV_ROOT

но, к сожалению, у меня был системный путь в буфере обмена при копировании. Итак, то, что у меня сейчас есть, примерно так:

OPENCV_ROOT = .....;% OPENCV_ROOT%\ Bin; ....

ПУТЬ = .....;% OPENCV_ROOT%\ Bin; ....

это явно очень плохо. Я пытаюсь удалить переменную OPENCV_ROOT, но без возможности запуска приложения с повышенными правами кажется невозможным

Помогите?

4 ответа4

2

Я не уверен, что Safe Mode что-то делает с переменной PATH, но стоит попробовать. В противном случае вы можете попробовать загрузиться в BartPE или WinPE и запустить regedit таким образом.

Загрузившись в * PE, запустите regedit , нажмите HKLM и выберите Файл → Загрузить куст.

#include <stdregistrywarning.h>

Перейдите в \WindowsDIR\system32\config и выберите файл «SYSTEM». Сначала вы можете сделать копию этого файла. Так, на всякий случай. Дайте Улей имя для загрузки. Например: OfflineSYS . Я говорю WindowsDIR , имея в виду, где Windows установлена на жестком диске вашего ноутбука, а не там, где работает Windows PE.

Затем перейдите к HKLM\OFFLINESYS\CurrentControlSet\Control\Session Manager\Environment

Теперь найдите REG_SZ значения path (если он слишком длинный) и отредактируйте его так, чтобы он был короче.

Вернитесь к HKLM и разгрузите улей. Выйдите из regedit , перезагрузитесь в Windows 7.

0

Таким образом, вы можете открыть cmd , затем есть команда set которую можно использовать для установки переменной, попробуйте установить пустые значения PATH и OPENCV_ROOT и внутри команды cmd выполнить C:\Windows\system32\system32\systempropertiesadvanced.exe .

0

Вы можете использовать стороннее приложение для редактирования реестра, такое как TuneUp Utilities. Хотя я не уверен, будет ли это работать для вас, но вы можете попробовать.

0

Попробуйте запустить REGEDIT от имени администратора, когда вы вошли в систему как обычно. Введите REGEDIT в поле поиска меню «Пуск». REGEDIT появляется вверху списка. SHIFT + щелкните правой кнопкой мыши и выберите «Запуск от имени администратора». При необходимости введите пароль администратора.

Иди сюда:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\ Путь к среде = РЕДАКТИРОВАТЬ ЭТО ЗНАЧЕНИЕ

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .