Поскольку Inno Setup является 32-разрядным приложением, необходимо принимать во внимание некоторые ограничения при использовании его 64-разрядных функций установки:
В секции [Code], когда программа установки/удаления работает в 64-разрядном режиме, функции, которые обращаются к файлам, отключают перенаправление файловой системы WOW64 (если не было сделано переопределение вызовом EnableFsRedirection). Однако здесь есть некоторые исключения. Функции, приведенные ниже, никогда не отключают перенаправление файловой системы, т.е. с помощью них нельзя передать (или получить) имя файла, который находится в 64-разрядном системном каталоге:
*Ini* |
(все функции, которые обрабатывают файлы INI) |
BrowseForFolder |
|
CreateShellLink |
|
GetOpenFileName |
|
LoadDLL |
(см. следующий пункт) |
ModifyPifFile |
|
SetCurrentDir |
|
ShellExec |
(вместо неё используйте Exec) |
UnregisterFont |
Кроме того, ни один VCL класс не способен отключить перенаправление файловой системы. Например, вы не можете использовать метод LoadFromFile класса TBitmap, чтобы загрузить файл растровой графики из 64-разрядного системного каталога.