Проблема с использованием $ {RunningX64} в NSIS - PullRequest
0 голосов
/ 22 августа 2011

Я использую приведенный ниже код в нескольких частях моего скрипта.

${If} ${RunningX64}
; 64bit bits go here
${Else}
; 32bit bits go here
${EndIf}

В одной функции она работает отлично, но другие вызовы не будут работать, если они не будут использованы после первоначального, правильно выполненного вызова.

Мне не удалось найти какой-либо логической причины для такого поведения. Я включил файлы вереска LogicLib.nsh и x64.nsh, но он проходит через 64-битный раздел.

Что бы это могло быть? Кажется, что нет никаких макросов для инициализации до их использования. Есть идеи?

1 Ответ

1 голос
/ 07 апреля 2012

Я использую плагин GetVersion следующим образом:

Var WINDOWS_ARCHITECTURE

GetVersion::WindowsPlatformArchitecture
Pop $WINDOWS_ARCHITECTURE ; 32 or 64
...