jafa
Posts: 51
Joined: Fri Feb 23, 2007 7:13 pm

Single installer for x86/x64/ARM64

My goal is for a customer to be able to click the download link on our website for "Windows" and the installer works, regardless of the CPU architecture of the PC they are running. ie the same way Mac works - the customer clicks the link for the Mac download and it works regardless of the CPU architecture.

As it stands today I think I need to create two projects, one for x86/x64 mixed and one for ARM64, build the two installers, then come up with my own magic to wrap the two with a script to launch the right one.
Catalin
Posts: 7030
Joined: Wed Jun 13, 2018 7:49 am

Re: Single installer for x86/x64/ARM64

Hello,

Thank you for your suggestion!

Please note that we already have this on our TODO list of improvements.

I will update this thread as soon as I will have more information about this/when this will be implemented.

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
jafa
Posts: 51
Joined: Fri Feb 23, 2007 7:13 pm

Re: Single installer for x86/x64/ARM64

Following up...
Catalin
Posts: 7030
Joined: Wed Jun 13, 2018 7:49 am

Re: Single installer for x86/x64/ARM64

Hello,

I'm afraid that this has not been implemented just yet.

However, as you previously mentioned, what we can do here is create a package for each and then a wrapper over those 3 added as prerequisites.

We can use as an install condition the following properties: VersionNT (for 32-bit), VersionNT64 (for 64-bit) and AiArm64.

For more details about this, please have a look over the following article:

How do I install resources based on the Operating System version?

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
sasha
Posts: 48
Joined: Fri Oct 20, 2023 8:37 pm

Re: Single installer for x86/x64/ARM64

Having this capability would be extremely nice.
A single .msi targeting x64 and ARM64 is becoming a hot requirement, at least for me.

A part of our installation is x64, even on the ARM64. And we use custom actions to call into out x64 DLLs during uninstall, etc.
As is, the custom action 'call function in a dll' doesn't work on ARM64 systems. It appears that native ARM64 code invoked by AI is trying to load our x64 DLL. And that will not work, of course.
So we are forced to come up with ugly workarounds using powershell scripts that determine if we are running on ARM64 and force launching of the x64 version of powershell. The PS script then loads a DLL and calls a function in it (there is an example of this on the AI support site).

Very ugly. Especially when a value from a DLL function needs to be stored into the installer properties.

So, adding the 'ARM64' checkbox in addition to the '64 bit' in the parameters for the 'call function in a DLL' custom action would be a great feature for AI.
Catalin
Posts: 7030
Joined: Wed Jun 13, 2018 7:49 am

Re: Single installer for x86/x64/ARM64

Hello,

Thank you for your feedback here.

I have forwarded this to our dev team and increased the priority for this improvement. Hopefully we will see it available in a future version of Advanced Installer.

Until then, however, one solution would be the one I presented above, which you seem to have already implemented.

Thank you for your understanding!

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
janisito
Posts: 80
Joined: Thu Apr 09, 2015 6:28 am

Re: Single installer for x86/x64/ARM64

Hi Catalin,

We are also looking to build an installer that installs either the x64 or Arm64 build depending on architecture.

Any time estimate when this functionality is available?

Thanks,

Regards
Jan
Catalin
Posts: 7030
Joined: Wed Jun 13, 2018 7:49 am

Re: Single installer for x86/x64/ARM64

Hello Jan,

Unfortunately, I can not offer an ETA.

However, there were quite some users who requested this and the dev team definitely has this on the TODO list.

The only thing is that this is quite a "big" change and therefore requires some additional consideration from the dev/qa team.

Thank you for your further patience on this!

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
janisito
Posts: 80
Joined: Thu Apr 09, 2015 6:28 am

Re: Single installer for x86/x64/ARM64

Hi Catalin,

Sorry about the double posts. I found the notification later in the spam folder.

I managed to work around this by using different "features" for the x64 and arm64, just like the example project you linked to. Even installing services and different files for each architecture. So I guess it actually is possible currently.

I can imagine this is a big change in AI if making it more streamline.

Thanks!

Regards
Jan
Catalin
Posts: 7030
Joined: Wed Jun 13, 2018 7:49 am

Re: Single installer for x86/x64/ARM64

You are always welcome, Jan!

And I'm glad you managed to get this working.
I can imagine this is a big change in AI if making it more streamline.
You're indeed right. :)

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Feature Requests”