Anand
Anand

Reputation: 493

Inno Setup gets launched in 32 bit even after specifying ArchitecturesInstallIn64BitMode

I am running an installer generated using InnoSetup on 64 bit Windows OS (Windows Server 2012 R2) installation with ArchitecturesInstallIn64BitMode=x64 and ArchitecturesAllowed=x64 but I still see that the process gets launched in 32 bit mode. Am I missing some other basic setting ?

OS Details :

Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

C:\Users>wmic OS get OSArchitecture
OSArchitecture
64-bit

C:\Users>echo %PROCESSOR_ARCHITECTURE%
AMD64

C:\Users>systeminfo | findstr /I type:
OS Build Type:             Multiprocessor Free
System Type:               x64-based PC

C:\Users>

Inno Setup : enter image description here

Task Manager : This is what Task Manager shows (I have masked out some names etc) enter image description here

Answer : Based on comments section, Inno Setup always produces a 32 bit installer executable. There is no mechanism to produce a 64 bit installer. I was mis-interpreting the documentation.

Upvotes: 5

Views: 2224

Answers (2)

Albert Wiersch
Albert Wiersch

Reputation: 556

The installer that Inno Setup creates is always 32-bit.

Unfortunately this means that if your application is 64-bit and the environment that someone is installing to only supports 64-bit then it won't work. This can happen, for example, when running under Wine when only 64-bit is supported. This appears to be the case for CentOS's implementation of Wine. Therefore all Inno Setup installations will fail (even for 64-bit programs) because it can't run 32-bit programs. I just became aware of this situation myself thanks to one of my customers.

Update: See the Notes on EPEL section here: CentOS - Notes on EPEL 7

Upvotes: 3

Lex Li
Lex Li

Reputation: 63183

Inno Setup started to support 64 bit installation long before Delphi supports 64 bit executable generation. Therefore, its core executable is 32 bit, and executes as a 32 bit process:

Inno Setup is a 32-bit application

To install files to 64 bit Windows folders while remaining a 32 bit process, it has to disable WOW64 redirection:

Setup temporarily disables WOW64 file system redirection when files/directories are accessed by those sections.

That explains what you observed.

Quotes can be found in the official article:
http://www.jrsoftware.org/ishelp/index.php?topic=64bitlimitations

Upvotes: 3

Related Questions