Nilai yang mungkin dari% PROCESSOR_ARCHITECTURE%

24

Saya sedang menulis skrip batch untuk windows 7 dan ingin menangani prosesor 64 bit dan dan x86.

Apa nilai yang mungkin dari %PROCESSOR_ARCHITECTURE%variabel lingkungan Windows ?

Jeff Atwood
sumber
6
'dimigrasi dari stackoverflow' ... seolah-olah seseorang tidak berpikir bahwa batch scripting adalah pemrograman yang tepat !?
Rory
Jawaban teratas sudah usang pada Mei 2019. Silakan lihat yang ini sebagai gantinya
rahuldottech mendukung Monica

Jawaban:

27

http://msdn.microsoft.com/en-us/library/aa384274.aspx

  • AMD64
  • IA64
  • x86

Perhatikan bahwa ini tidak memberi tahu Anda arsitektur prosesor tetapi hanya proses dengan variabel lingkungan. Ia mengembalikan "x86" untuk proses 32 bit yang berjalan pada Windows 64 bit.

RobertPitt
sumber
10
Ada solusi untuk masalah "proses 32bit pada Windows 64bit": cukup periksa PROCESSOR_ARCHITEW6432juga, dan jika tidak ditentukan (yaitu sama dengan AMD64atau IA64), maka ini adalah mesin 64bit. Sumber .
Olegs Jeremejevs
2
Harus menambahkan ARMdi sana sekarang.
quadruplebucky
2
Jawaban ini sudah usang sejak Mei 2019. Harap lihat yang ini sebagai gantinya.
rahuldottech mendukung Monica
5

"EM64T" juga merupakan nilai yang mungkin, namun tidak mungkin. Pemahaman saya adalah Anda hanya akan melihat ini dengan XP-64.

DednDave
sumber
2

Jawaban teratas saat ini sudah usang. Pada Mei 2019, berikut adalah semua nilai yang valid dari %PROCESSOR_ARCHITECTURE%:

64-bit :

  • AMD64
  • IA64
  • ARM64
  • EM64T

( EM64TSangat jarang terlihat, hampir selalu pada Windows XP-64. Anda dapat dengan aman mengabaikan ini di script Anda dalam kebanyakan kasus kecuali kebutuhan kode Anda untuk menjadi yang super mundur-kompatibel.)

32-bit :

  • X86

( sumber )

rahuldottech mendukung Monica
sumber