Я пишу пакетний сценарій для Windows 7 і хочу обробляти як 64-бітні, так і x86-процесори.
Які можливі значення %PROCESSOR_ARCHITECTURE%
змінної середовища Windows ?
Я пишу пакетний сценарій для Windows 7 і хочу обробляти як 64-бітні, так і x86-процесори.
Які можливі значення %PROCESSOR_ARCHITECTURE%
змінної середовища Windows ?
Відповіді:
http://msdn.microsoft.com/en-us/library/aa384274.aspx
Зауважте, що це не каже вам архітектуру процесора, а лише процес із змінною середовища. Він повертає "x86" для 32-бітного процесу, що працює на 64-бітної Windows.
PROCESSOR_ARCHITEW6432
, і якщо він не визначений (тобто дорівнює AMD64
або IA64
), то це 64-бітна машина. Джерело .
ARM
туди зараз.
Верхня відповідь наразі застаріла. Станом на травень 2019 року, тут є всі дійсні значення %PROCESSOR_ARCHITECTURE%
:
64-розрядні :
AMD64
IA64
ARM64
EM64T
( EM64T
зустрічається дуже рідко, майже завжди в Windows XP-64. Ви можете сміливо ігнорувати це у своїх сценаріях у більшості випадків, якщо ваш код не повинен бути сумісним супер .)
32-розрядні :
X86
( джерело )