Uma maneira um pouco mais rápida seria verificar a existência do diretório% ProgramFiles (x86)%. Se existir, então você está rodando 64-bit, se ele não existir, então você está rodando 32-bit.
Quick one-liner:
if exist "%ProgramFiles(x86)%" echo 64-bit
Isso gerará 64-bit
se o diretório existir. Isso falharia, no entanto, se não existisse como uma variável, mas existisse como um diretório (como% ProgramFiles (x86)%).
Você também pode usar a ferramenta de localização para ter uma maneira mais precisa de determinar a precisão.
set | find "ProgramFiles(x86)"
ou usando o comando systeminfo
anteriormente
systeminfo | find /I "System type"
(incluiu o /I
para funcionar em XP / 2003/2008 / etc)