<NativeBootstrapper>.PrerequisiteRegKeyValue Value Check

May 18, 2015 at 4:13 PM
Is there a way to determine if a prerequisite needs to be installed by looking at the value of a registry key (e.g. .Net Framework 4.5.1) for a NativeBootstrapper? It looks like <NativeBootstrapper>.PrerequisiteRegKeyValue can only inspect the existence of a registry key and not a condition.

I'd like to be able to check if:

[HKLM]\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\Release > 378675

in the NativeBootstrapper.
May 19, 2015 at 12:17 AM
Native bootstrapper is a very simple application fro a very limited use-case. It doesn't check the registry entry value but only the registry entry presence.

If you want to change it then you will need to change the Native bootstrapper itself (source code is available for GIT). Or for simple scenarios you can use pseudo-bootstrapper ('Simplified Bootstrapper' sample).

I do plan to extend Wix# with Burn support but Wix# is not ready yet for this.
May 21, 2015 at 5:05 AM
Thanks a ton. I pulled the source and ended up digging down into nbsbuilder.exe. I was not happy with the end result. Seemed like a hack job. Ultimately, I decided to go with the solution described by Crazychief here: https://wixsharp.codeplex.com/discussions/58159, which was to embed the .NET framework in the MSI and then on a custom action extract it and install. Seems to work pretty well.
Marked as answer by TobiaszJason on 5/21/2015 at 2:01 PM
May 21, 2015 at 5:27 AM
nbsbuilder was an experiment. It was done when people hesitated to have an "unorthodox" MSI. As for me 'Simplified Bootstrapper" (that Crazychief solution) covers pretty much all your needs.

But... I am planing to have a WiX native bootstrapper support (burn) in the next release.