Перейти к содержимому

Есть ли способ постоянно устанавливать переменную среды с более чем 4096 символов в ОС Windows?

0

В настоящее время я ищу способ преодоления ограничения на длину переменной среды в ОС Windows, и максимальный предел, которого я достиг, составляет 4133. Но для моего проекта мне нужно проверить установку системы с более длинной средой пути (8000, 16000 или даже максимум 32000).

Команда setx отсутствует, поскольку она автоматически усекает путь среды до 1024 символов.

Я пробовал API SetEnvironmentVariable () PowerShell, и он, кажется, имеет ограничение ~ 4133 символа, остальное автоматически усекается или не работает должным образом.

Есть ли способ преодолеть этот предел?

536 просмотров
Dang Thien Nguyen спросил 7 лет назад
D 1

1 ответ

1

Документация Microsoft гласит, что переменная окружения в Windows ограничена только 32 767 символами ( ссылка ). Здесь не сказано, как создать очень длинную переменную.

Проблема здесь в том, что инструменты, предоставляемые Windows, имеют свои ограничения:

  • Команды set и setx усекают значения до 1023 символов.

  • Установка непосредственно в реестре по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environmentне удалась, поскольку regedit усекает введенные строки после 2047 символов.

Насколько я вижу, ваш единственный оставшийся вариант - написать небольшую программу, используя функцию API SetEnvironmentVariable Windows API, в документации которой указан предел в 32 767 символов. Сценарии здесь не помогут, так как они также имеют свои пределы.

harrymc ответил 7 лет назад
H 249 057