2011-12-31 2 views
2

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

Я установил бета-версию 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);, чтобы попытаться установки.

ответ

0

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

+0

Спасибо, Роб, я больше, чем «счастлив», потому что это ошибка, потому что я почесывал голову о том, что я могу сделать неправильно! После того, как он снова запущен, я заметил, что в нескольких местах вы вызывали людей на создание «более симпатичного» образца UX/installer - я постараюсь и займусь этим вызовом :) –