[wix-users] .NET Standard

Sean Hall r.sean.hall at gmail.com
Fri May 29 03:01:45 PDT 2020

I don't think there's anything preventing you from writing your BA or
Custom Action in .NET Standard 2.0 or earlier. BootstrapperCore.dll and all
of DTF is compiled for .NET Framework 3.5 and should be usable anywhere
.NET Standard 2.0 or earlier is supported.

Of course, that's not what you're really asking for - you want your BA or
Custom Action to run on .NET Core instead of .NET Framework. Since both
Windows Installer (msiexec.exe) and bundles (burn.exe) are written in
native code, the BA or the CustomAction is the one that needs to start the
.NET Core runtime. This is the hard part, and significantly more
complicated than starting the .NET Framework runtime. In fact, .NET Core
barely supports how WiX wants to host the runtime -
https://github.com/dotnet/runtime/issues/35465. If your expectation was
that you could just package up the .NET Core runtime with your Custom
Action to avoid relying on it being installed, be aware that on .NET Core
3.1 (currently the latest version) that would be at least 30MB.

I think it's fair to say that no one on the WiX core team is going to spend
their free time getting Custom Actions running on .NET Core. These days,
you can rely on .NET Framework 4.x being available on the machine and best
practice custom actions shouldn't be interesting enough to need any new
functionality from .NET Core.

WiX v4 has a .NET Core BA, with the requirement that you target .NET Core
3.x or later.

On Fri, May 29, 2020 at 12:11 AM Vanniekerk, Tyrel (GE Healthcare) via
wix-users <wix-users at lists.wixtoolset.org> wrote:

> Hi,
> This is just a general question to the WiX Toolset developers.  I am
> curious if there are any reasons why the ApplicationBootstrapper and
> CustomActions classes and assemblies could not be written to support .NET
> Standard 2.*?
> I have a launcher application that our users use to kick off the various
> installers etc., and it's just a .NET WPF app, so it does not have the
> handy dandy C++ bootstrapper to install .NET Framework if needed.  If I
> understand correctly, the .NET standard/core uses a NuGet packages version
> of the .NET Framework, so that app should be able to run on a system
> without .NET Framework installed.  At least that's what I expect.
> If the bootstrapper UI was also in standard, it would mean that it could
> run without needing to install the framework, which would be cool.
> Thanks,
> Tyrel
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/

More information about the wix-users mailing list