https://stackoverflow.com/questions/17944516/inno-setup-32bit-and-64bit-dll-installation
4
I have had success with the following:
[Files]
Source: D:..32bit filesmylibrary.dll; DestDir: {app};
Flags: restartreplace ignoreversion regserver 32bit; **Check: "not IsWin64"**
Source: D:..64bit filesmylibrary.dll; DestDir: {app};
Flags: restartreplace ignoreversion regserver 64bit; Check: IsWin64
{app}
resolves to installation folder selected by user, it won't magically map to 64-bit equivalent when64bit
flag is used). On the other hands, this is the correct solution for most cases. For example if your application is 32-bit, but also has 64-bit version shell extension, you still install the shell extension along with the rest of the binaries to the 32-bit "Program Files". But you use the64bit
flag to make it register for 64-bit. – Martin Prikryl Feb 28 '16 at 7:04