Подтвердить что ты не робот

Использование% PROGRAMFILES (x86)% для ОС Windows 32bit

Что происходит, когда я использую переменную окружения %PROGRAMFILES(x86)% в ОС Windows, 32-разрядную (например, более старые версии Windows, такие как Windows XP, Vista)?

Я надеюсь, что он просто решит: C:/Program Files. Это произойдет?

4b9b3361

Ответ 1

В соответствии с для этого переменная среды %PROGRAMFILES(x86)% доступна только в 64-разрядных системах.

Однако, если вы используете 64-разрядную систему и используете %PROGRAMFILES%, результат, полученный вами, зависит от того, является ли процесс, запрашивающий переменную среды, 32-разрядной или 64-разрядной.

Итак, из 64-битного процесса в 64-битной системе вы получите C:\Program Files, из 32-разрядного процесса в 64-битной системе вы получите C:\Program Files (x86), а из 32-битного процесса на 32-битную систему вы получили бы C:\Program Files.

Если это не помогает, возможно, вы можете прокомментировать или отредактировать исходный вопрос, чтобы сделать его конкретным, что вы пытаетесь сделать. Как и в настоящее время, ответ на ваш вопрос "Нет".

Ответ 2

Keith Hill ответил на этот вопрос здесь, резюме:

${env:ProgramFiles(x86)} не определен на 32-разрядной машине

Если вы всегда хотите поместить/получить данные в/из каталога x86, вы можете использовать этот код для определения путей к файлам:

$file = "\file"
if ("${Env:ProgramFiles(x86)}")
{
    $fullPath = "${Env:ProgramFiles(x86)}\$file"
}
else
{
    $fullPath = "${Env:ProgramFiles}\$file"
}

Ответ 3

Если вы используете %programfiles% на 32-разрядном компьютере/ноутбуке, он откроет C:\Program Files.

Если вы используете %programfiles% на 64-разрядном компьютере/ноутбуке, он откроет C:\Program Files.

Если у вас установлена ​​64-разрядная программа на 32-разрядном компьютере/ноутбуке, она будет установлена ​​в новой папке с именем Program Files (x64), которая находится на диске "C". В этом случае вы должны использовать %programfiles(x64).

Если у вас установлена ​​32-разрядная программа на 64-разрядном компьютере/ноутбуке, она будет установлена ​​в новой папке с именем Program Files (x86), которая находится на диске "C". В этом случае вы должны использовать %programfiles(x86).