Я создал приложение C # WinForms, которое зависит от .NET Framework версии 4.6.1 и GhostScript 9.2.1 (32-разрядная версия Windows). Я сделал простой установщик Windows (MSI-файл) для приложения WinForms, но библиотека GhostScript отказалась устанавливать. Поэтому я решил сделать установщик пакета, используя загрузчик WiX.
В проекте начальной загрузки я упаковал установщик GhostScript exe и простой установщик msi из предыдущих версий. Я думаю, что я также позаботился о .NET Framework в первых строках загрузчика.
Теперь я все еще сталкиваюсь с проблемой во время установки Bootstrap. Проблема в том, что при установке пропускается установка MSI. Как мне успешно завершить установку Bootstrap?
Вот XML для проекта начальной загрузки:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Bundle Name="Bootstrapper1" Version="1.0.0.0" Manufacturer="POD" UpgradeCode="390cbc0b-980b-4f35-a9de-a11228f75b69">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
<PayloadGroup Id="NetFx461RedistPayload">
<Payload Name="redist\NDP461-KB3102436-x86-x64-AllOS-ENU.exe"
SourceFile="C:\Users\Admin\Downloads\NDP461-KB3102436-x86-x64-AllOS-ENU.exe"/>
</PayloadGroup>
<Chain>
<!-- TODO: Define the list of chained packages. -->
<!-- <MsiPackage SourceFile="path\to\your.msi" /> -->
<PackageGroupRef Id="NetFx461Web"/>
<ExePackage Id="Ghostscript_32_bit_Version_9.2.1"
Cache="yes"
Compressed="yes"
PerMachine="yes"
Permanent="yes"
Vital="yes"
SourceFile="C:\Users\Admin\Downloads\gs921w32new.exe"
InstallCommand="/passive /norestart" />
<MsiPackage Id="POD_Measuring_Tool"
Cache="yes"
Compressed="yes"
Permanent="yes"
Vital="yes"
SourceFile="C:\Users\Admin\Documents\POD\Workspace Folder\c# projects\6lumber\toolPOD\Debug\toolPOD.msi" />
</Chain>
</Bundle>
</Wix>
Я ссылаюсь на WixBalExtension и WixNetFxExtension, а файл msi и ghostscript exe взяты с моего компьютера.