Come rilevare se il sistema operativo supporta gli ex a 16 bit in Python? [duplicare

StackOverflow https://stackoverflow.com/questions/9456171

  •  13-11-2019
  •  | 
  •  

Domanda

Questa domanda ha già una risposta qui:

Questo è essenzialmente lo stesso di chiedere come rilevare che sto correndo sotto una versione a 64 bit di Windows.

os.name Dà 'NT' con Win7 64 e WinXP 32 (i miei due computer di prova disponibili).sys.platform Dà 'Win32' in entrambi questi casi.

Sembra l'unica cosa che ho trovato finora che funziona è controllare la chiave del registro HKLM\HARDWARE\DESCRIPTION\System\CentralProcessor\0\Identifier E se 'x86' non viene visualizzato in esso, supponiamo che significhi finestre a 64 bit. È affidabile?

(Il processo Python deve essere eseguito con Python 2.7 32-bit)

È stato utile?

Soluzione

Considera di controllare il PROCESSOR_ARCHITECTURE chiave in os.environ, e vedere se è pronto per x86 o no.

In alternativa, puoi usare il platorm.architecture() chiama, ma puntalo su a diverso eseguibile da quello Python (dal momento che devi funzionare sotto Python a 32 bit).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top