Подтвердить что ты не робот

Как обнаружить 64-битную платформу на script

есть код для обнаружения 64-й платформы, например.

if X86 then ...
if X64 then ...
4b9b3361

Ответ 1

Да.

Использование

if IsWin64 then
  // Do sth
else
  // Do sth else

Существует также функция Is64BitInstallMode. Действительно, 32-разрядная установка может работать на 64-битной ОС. Следовательно, Is64BitInstallMode означает IsWin64, но IsWin64 не означает Is64BitInstallMode.

Ответ 2

Если вы хотите бросить проверку, следует ли сбросить или запустить файл, вы также можете выполнить проверку на вызов.

Check: IsWin64;

или даже

Check: "not IsWin64";

Это позволяет быстро и просто скомпилировать 32-разрядные и 64-разрядные установки приложений в один пакет, но только запустить конкретный.

EDIT: Чтобы немного расширить для тех, кто может это искать, я хотел бы следить за ними.

Например, если вы хотите разрешить копирование определенных файлов установщиком, вы можете сделать следующее:

[Files]
Source: "MyProg-x64.exe"; DestDir: "{app}"; Check: IsWin64;
Source: "MyProg-x86.exe"; DestDir: "{app}"; Check: "not IsWin64";

Адаптировано из источника: http://www.jrsoftware.org/ishelp/index.php?topic=scriptcheck