Wie installiere ich .NET 4.5 mit einem WiX-Bundle?

Ich muss Microsoft einbeziehen.NETZ 4.5 als Voraussetzung für mein Installationspaket, und ich möchte es so automatisch wie möglich. .NET sollte jedochnicht beim Auskristallisieren entfernt werden. Ich glaube, ich habe so ziemlich alles darüber gelesen, wie man es benutztDetectCondition und / oderInstallCondition, aber ich verstehe es immer noch nicht richtig; Es wird entweder immer die .NET-Installation ausgeführt oder es wird nie ausgeführt.

Hier ist mein neuestes Setup:

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
     xmlns:bal="http://schemas.microsoft.com/wix/BalExtension"
     xmlns:netfx='http://schemas.microsoft.com/wix/NetFxExtension'>

  <!-- Define minimum .NET Framework version -->
  <?define NetFx45MinRelease = 377811?>
  ...
    <Chain>
      <PackageGroupRef Id="Netfx45FullPackage"/>
      ...
    </Chain>

    <PackageGroup Id="Netfx45FullPackage">
      <ExePackage Id="Netfx45Full" Cache="no" Compressed="yes" PerMachine="yes" Permanent="yes" Vital="yes"
                  SourceFile="..\..\..\..\Environment\InstallerResources\Prerequisites\dotnetfx45_full_x86_x64.exe"
                  InstallCommand="/passive /norestart"
                  DetectCondition="NETFRAMEWORK45 &gt;= $(var.NetFx45MinRelease)"
                  InstallCondition="NOT REMOVE AND (NETFRAMEWORK45 &lt; $(var.NetFx45MinRelease))" />
    </PackageGroup>

(Aus irgendeinem Grund musste ich definierenNetFx45MinRelease ich selbst, obwohl es in WixNetFxExtension enthalten sein sollte.)

Wie kann ich die Einstellungen korrigieren?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage