1

Когда я запускаю команду set в командной строке, первая переменная, которую я вижу,

Но когда я открываю свой GUI переменных среды, я не вижу ALLUSERSPROFILE

Это почему? Есть множество других переменных, перечисленных в set которые также не отображаются в графическом интерфейсе. Разве они не должны показывать одну и ту же информацию?

2 ответа2

2

После небольшого количества проб и ошибок я обнаружил, что эти переменные среды являются дополнительными, о которых сообщает SET в моей системе Windows 8.1:

ALLUSERSPROFILE
APPDATA
CommonProgramFiles
CommonProgramFiles(x86)
CommonProgramW6432
COMPUTERNAME
HOMEDRIVE
HOMEPATH
LOCALAPPDATA
LOGONSERVER
ProgramData
ProgramFiles
ProgramFiles(x86)
ProgramW6432
PROMPT
PUBLIC
SESSIONNAME
SystemDrive
SystemRoot
USERDOMAIN
USERDOMAIN_ROAMINGPROFILE

Я подозреваю, что все они автоматически генерируются и обновляются Windows, поэтому, вероятно, я не смог найти некоторые из них в списке в реестре Windows.

Я знаю , что HOMEDRIVE HOMEPATH и HOMESHARE будут автоматически обновляться из этого TechNet Форумы размещают.

Я попытался навсегда изменить переменную PROMPT на значение, отличное от $P$G (которое по умолчанию), с помощью SETX и заметил, что она создала новую переменную среды PROMPT в разделе Пользовательские переменные для раздела <username> в графическом интерфейсе переменных среды.

При удалении этой переменной моя подсказка была сброшена до $P$G Я заметил такое же поведение с переменной среды COMPUTERNAME .

То же самое касается:

PROCESSOR_ARCHITECTURE
ProgramFiles
ProgramW6432
CommonProgramFiles
CommonProgramW6432

как объяснено в этой статье MSDN о деталях реализации WOW64.

1

Согласно SS64.com (раздел Autoexec.bat), эти переменные могут быть переменными времени загрузки , которые «недоступны для 32-битных программ с графическим интерфейсом ». Начиная с Windows XP, переменные среды при загрузке должны быть установлены с реестром в:
HKEY_CURRENT_USER\Environment (переменные среды USER) или:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment (переменные среды SYSTEM)
как показано в КБ Microsoft

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