InstallAnywhere 2020
Microsoft designed 64-bit versions of Windows to allow existing 32-bit applications to work seamlessly on 64-bit versions of Windows. They also designed 64-bit versions of Windows in such a way to allow a recompiled version of the same code to work seamlessly as a 64-bit application.
In some cases, such as installation, what is normally a beneficial separation becomes a challenge. Typically installers are 32-bit applications themselves (in order to run on 32-bit machines), and accessing 64-bit locations to install a 64-bit application is more complex than a standard file copy or registry write. InstallAnywhere has support that lets you create installers that target both 32-bit and 64-bit versions of Windows.
Challenges of Supporting Both 32-Bit and 64-Bit Windows-Based Systems
32-Bit vs. 64-Bit File Locations
To provide support for allowing existing 32-bit applications to work on 64-bit versions of Windows, most 64-bit versions of Windows use 32-bit Windows-on-Windows (WOW64) emulation. This WOW64 emulation support isolates the 32-bit and 64-bit files from each other by storing their files in separate locations.
A 64-bit target system typically has two Program Files folders:
• | Program Files, which is for 64-bit applications |
• | Program Files (x86), which is for 32-bit applications |
A 64-bit target system typically has two Common Files folders (one in either Program Files folder):
• | Program Files\Common Files, which is for 64-bit applications |
• | Program Files (x86)\Common Files, which is for 32-bit applications |
A 64-bit target system also typically has two system folders:
• | System32, which is for 64-bit libraries and executable files |
• | SysWOW64, which is for 32-bit libraries and executable files |
Thus, if an end user runs a 32-bit installer on a 64-bit version of Windows that uses WOW64 emulation, files that you may want to be installed to 64-bit file locations may be redirected to 32-bit file locations (such as Program Files x86). However, on 32-bit systems, such files are installed to Program Files.
32-Bit vs. 64-Bit Registry Locations
The isolation of 32-bit and 64-bit data from each other on 64-bit systems also occurs in the registry. A 64-bit target system typically has two HKEY_LOCAL_MACHINE\Software keys:
• | HKLM\Software, which is for 64-bit applications |
• | HKLM\Software\Wow6432Node, which is for 32-bit applications |
Thus, if an end user runs a 32-bit installer on a 64-bit version of Windows that uses WOW64 emulation, registry data that you may want to be installed to 64-bit HKLM\Software locations may be redirected to HKLM\Software\Wow6432Node. On 32-bit systems, such registry data are installed to HKLM\Software.
Tip • To see how a 32-bit application views the registry on a 64-bit version of Windows, launch the 32-bit version of the Registry Editor (the regedit.exe file in the SysWOW64 folder).
Pure 64-Bit Target Systems
Some 64-bit versions of Windows—such as Windows Server Core systems—may not have WOW64 support. These 64-bit systems cannot run 32-bit installers.
32-Bit Installer Support in InstallAnywhere for 32-Bit and Most 64-Bit Windows-Based Target Systems
In some scenarios, if you are creating 32-bit installers for 32-bit and 64-bit versions of Windows, you may want WOW64 emulation to be enabled for your 32-bit installers. In other scenarios, you may want WOW64 emulation to be disabled for your 32-bit installers.
To learn more, see Enabling or Disabling WOW64 Emulation on 64-Bit Windows-Based Target Systems.
Pure 64-Bit Installer Support in InstallAnywhere for 64-Bit Windows-Based Target Systems
In some other scenarios, you may want to create pure 64-bit installers that run on 64-bit versions of Windows that may or may not have WOW64 support.
For more information, see Creating Pure 64-Bit Installers for 64-Bit Windows-Based Target Systems.
InstallAnywhere 2020 Help LibraryOctober 2019 |
Copyright Information | Flexera |