WiX 3.6 Burn загрузчик не может поднять - PullRequest
2 голосов
/ 01 января 2012

Я немного новичок в мире WiX, поэтому вполне возможно, что я упустил что-то очень очевидное.

Я установил бета-версию WiX 3.6 и также взял источник для работы (и настроил его для использования установленных двоичных файлов WiX 3.6), но у меня проблемы с загрузчиком.Я могу отобразить свой пользовательский интерфейс, но он ничего не установит - в журналах произойдет сбой:

Error 0x80070006: Failed to write message type to pipe.
Error 0x80070006: Failed to write send message to pipe.
Error 0x80070006: Failed to send BURN_ELEVATION_MESSAGE_TYPE_EXECUTE_DEPENDENCY message to per-machine process.
Error 0x80070006: Failed to register the dependency on per-machine package.
Error 0x80070006: Failed to execute dependency action.
Error 0x80070006: Failed to execute apply.

То же самое происходит, если я использую WixUX в источнике WiX.Если я (вручную) запустлю его как администратор, он установит файл, используя мой графический интерфейс или WixUX.Если я использую значение по умолчанию WixStandardBootstrapperApplication, оно устанавливается нормально независимо от повышения прав.

Сам файл MSI в настоящее время устанавливается в UserData, поэтому на самом деле повышение прав не требуется.

Мой Bundle.wxs выглядит так:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
    <Bundle Name="MahChats" Version="1.0.0.1" Manufacturer="MahApps" IconSourceFile="../../../MahChats/src/MahChats/mahchats.ico" UpgradeCode="9c9a0cf4-659f-4543-b05a-962322fec4a0">
        <BootstrapperApplicationRef Id="ManagedBootstrapperApplicationHost">
            <Payload SourceFile='WixUX.dll' />
            <Payload Name='BootstrapperCore.config' SourceFile='WixUX.BootstrapperCore.config' />
        </BootstrapperApplicationRef>
        <Chain>
            <PackageGroupRef Id="Netfx4Full"/>
            <MsiPackage Id='MahChats' Vital='yes' Name='MahChats.Setup.msi' SourceFile="C:\Code\mahchats\src\MahChats.Setup\bin\Debug\MahChats.Setup.msi" />
        </Chain>
    </Bundle>
    <Fragment>
        <WixVariable Id="WixMbaPrereqPackageId" Value="Netfx4Full" />
        <WixVariable Id="WixMbaPrereqLicenseUrl" Value="NetfxLicense.rtf" />

        <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" Value="Version" Variable="Netfx4FullVersion" />
        <util:RegistrySearch Root="HKLM" Key="SOFTWARE\Microsoft\Net Framework Setup\NDP\v4\Full" Value="Version" Variable="Netfx4x64FullVersion" Win64="yes" />
        <PackageGroup Id="Netfx4Full">
            <ExePackage Id="Netfx4Full"
                Cache="no"
                Compressed="no"
                PerMachine="yes"
                Permanent="yes"
                Vital="yes"
                SourceFile="dotNetFx40_Full_x86_x64.exe"
                DownloadUrl="http://go.microsoft.com/fwlink/?LinkId=164193"
                DetectCondition="Netfx4FullVersion AND (NOT VersionNT64 OR Netfx4x64FullVersion)" />
        </PackageGroup>
    </Fragment>
</Wix>

На самом деле я не нашел никакой документации по Burn , поэтому я использую проект WixUX, чтобы разобраться с этим, иЯ использую Bootstrapper.Engine.Plan(LaunchAction.Install); для попытки установки.

1 Ответ

0 голосов
/ 01 января 2012

Пол, это ошибка.В праздничные дни было множество исправлений в коде зависимостей, которые, скорее всего, исправили эту проблему.К сожалению, нет еженедельной сборки из-за проблем с SourceForge, над которыми я сейчас работаю (в буквальном смысле).Я ожидаю сборки в следующую пятницу и призываю вас перейти к ней, как только она будет доступна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...