Я должен создать пакетный файл для Windows 7. Этот .bat файл только для того, чтобы установить приложение. Проблема - то, что я должен знать, составляет ли Windows 7 32 бита (и затем запустите 32 установщика), или если это - Windows 7 64 бита (затем запускает установщик на 64 бита). Какую команду я могу использовать в пакетном файле, чтобы знать, составляет ли Windows 7 32 или 64 бита?
Заранее спасибо!!!
Можно использовать переменную среды PROCESSOR_ARCHITECTURE, чтобы определить, работает ли сам процесс как 32-разрядный или 64-разрядный. Значение является или AMD64 или x86.
Необходимо быть осторожными все же. Если бы Ваш пакетный файл выполняется от 32-разрядной версии CMD.EXE (в \Windows\SysWOW64), эта переменная была бы установлена на "x86", в то время как это будет "AMD64" если из CMD.EXE в \Windows\System32 на 64-разрядной версии Windows.
Если Вы не хотите использовать временный файл txt использование файла канал:
Set RegQry=HKLM\Hardware\Description\System\CentralProcessor\0
REG.exe Query %RegQry% | Find /i "x86"
If %ERRORLEVEL% == 0 (
GOTO X86
) ELSE (
GOTO X64
)
:X86
Commands here
GOTO END
:X64
commands here
:End