Comment puis-je faire un installateur WiX avec .NET 3.5 d'installation de sp1 complètement autonome?
-
13-09-2019 - |
Question
Je dois inclure le programme d'installation de .NET 3.5 sp1 dans mon installateur, qui est WiX.
J'ai besoin que boostrapper être entièrement autonome, sans accès web à tous. Il est tout simplement pas permis pour ce programme d'installation d'exiger le web; nous avons des clients en Mongolie extérieure (je suis sérieux, pas seulement en utilisant le nom du lieu, car il est à distance) à qui nous envoyons des CD parce qu'ils n'ont pas accès à Internet à tous.
Les Etats tutoriel WiX:
<Target Name="AfterBuild">
<GenerateBootstrapper ApplicationFile="$(TargetFileName)"
ApplicationName="My Application Name"
BootstrapperItems="@(BootstrapperFile)"
ComponentsLocation="Relative"
CopyComponents="True"
OutputPath="$(OutputPath)"
Path="C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\"/>
</Target>
Le programme d'amorçage ci-dessus nécessite le web. Comment puis-je faire un programme d'installation qui ne fonctionne pas?
La solution
<Project ToolsVersion="3.5"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<BootstrapperFile Include="Microsoft.Net.Framework.3.5.SP1" >
<ProductName>.NET Framework 3.5 SP1</ProductName>
</BootstrapperFile>
<BootstrapperFile Include="Microsoft.Windows.Installer.3.1" >
<ProductName>Windows Installer 3.1</ProductName>
</BootstrapperFile>
</ItemGroup>
<Target Name="setup">
<GenerateBootstrapper
ApplicationFile="myproduct.msi"
ApplicationName="myproduct"
BootstrapperItems="@(BootstrapperFile)"
Path="$(bootstrapperPackagesFolder)"
ComponentsLocation="Relative"
OutputPath="$(cddir)"
Culture="en"/>
</Target>
</Project>
Dans votre cas, la variable $(bootstrapperPackagesFolder)
citerais C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\
. La variable $(cddir)
est le dossier dans lequel vous rédigez le contenu de votre CD d'installation.
La tâche de GenerateBootStrapper
génère non seulement un exe bootstrapper, mais aussi copier un DotNetFX35SP1
et un dossier WindowsInstaller3_1
au même endroit. Lors de l'installation, l'exe bootstrapper recherchera les dossiers et utiliser les fichiers là-dedans, plutôt que de les télécharger.
Je ne sais pas si mon exemple est différent de ce que vous faites déjà; peut-être vous avez oublié d'inclure le dossier DotNetFX35SP1
sur le CD d'installation?
Autres conseils
Vous pouvez checkout cette Microsoft exemple de code , la chose est que Wix ne fournit pas un programme d'amorçage / chainer -. qui ne vient pas jusqu'à 3,5 WiX comme l'outil « Burn »
Je ne suis pas sûr de ce que vous utilisez dans votre exemple original, je suppose msbuild
ou quelque chose -. Qui ne fait pas partie WiX