ค่าที่เป็นไปได้ของ% PROCESSOR_ARCHITECTURE%


25

ฉันกำลังเขียนสคริปต์ชุดสำหรับ Windows 7 และต้องการจัดการทั้ง 64 บิตและโปรเซสเซอร์ x86

ค่าที่เป็นไปได้ของ%PROCESSOR_ARCHITECTURE%ตัวแปรสภาพแวดล้อมWindows คืออะไร


6
'โยกย้ายจาก stackoverflow' ... ราวกับว่ามีคนไม่คิดว่าการเขียนสคริปต์แบบชุดเป็นการเขียนโปรแกรมที่เหมาะสม !?
Rory

คำตอบด้านบนล้าสมัยเมื่อเดือนพฤษภาคม 2019 โปรดดูนี้หนึ่งแทน
rahuldottech สนับสนุน Monica

คำตอบ:


28

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

  • AMD64
  • IA64
  • x86

โปรดทราบว่านี่ไม่ได้บอกสถาปัตยกรรมของโปรเซสเซอร์ แต่มีเพียงกระบวนการที่มีตัวแปรสภาพแวดล้อม ส่งคืน "x86" สำหรับกระบวนการ 32 บิตที่ทำงานบน Windows 64 บิต


10
มีวิธีแก้ปัญหาสำหรับปัญหา "กระบวนการ 32 บิตใน Windows 64 บิต": ตรวจสอบPROCESSOR_ARCHITEW6432ด้วยและหากไม่ได้กำหนดไว้ (เช่นเท่ากับAMD64หรือIA64) แสดงว่าเป็นเครื่อง 64 บิต แหล่ง
Olegs Jeremejevs

2
ควรเพิ่มARMในตอนนี้
quadruplebucky

2
คำตอบนี้ล้าสมัยตั้งแต่พฤษภาคม 2019 โปรดดูคำตอบนี้แทน
rahuldottech สนับสนุน Monica

5

"EM64T" ก็เป็นค่าที่เป็นไปได้เช่นกัน ความเข้าใจของฉันคือคุณจะเห็นเฉพาะกับ XP-64


3

คำตอบยอดนิยมล้าสมัยแล้วในขณะนี้ ตั้งแต่เดือนพฤษภาคม 2019 ต่อไปนี้เป็นค่าที่ถูกต้องทั้งหมดของ%PROCESSOR_ARCHITECTURE%:

64 บิต :

  • AMD64
  • IA64
  • ARM64
  • EM64T

( EM64Tพบเห็นได้ยากมากแทบทุกครั้งใน Windows XP-64 คุณสามารถเพิกเฉยต่อสิ่งนี้ได้ในสคริปต์ของคุณในกรณีส่วนใหญ่ยกเว้นว่ารหัสของคุณจะต้องเข้ากันได้กับซุปเปอร์แบ็กเอนด์)

32 บิต :

  • X86

(ที่มา )

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.