Я пишу пакетний сценарій для 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 IA64ARM64EM64T ( EM64Tзустрічається дуже рідко, майже завжди в Windows XP-64. Ви можете сміливо ігнорувати це у своїх сценаріях у більшості випадків, якщо ваш код не повинен бути сумісним супер .)
32-розрядні :
X86( джерело )