カスタムManaged Bootstrapper Application (MBA) を作成し、修復を除いてほとんどの機能を動作させました。バンドル ログを調べると、次の情報が得られます。
[335C:3440][2013-04-29T13:51:41]w343: Prompt for source of package:
NetFx45Web, payload: NetFx45Web, path:
D:\dev\Setup\redist\dotNetFx45_Full_setup.exe
[335C:3440][2013-04-29T13:51:41]e054: Failed to resolve source for file:
D:\dev\Setup\redist\dotNetFx45_Full_setup.exe, error: 0x80070002.
[335C:3440][2013-04-29T13:51:41]e000: Error 0x80070002: Failed while
prompting for source (original path
'D:\dev\Setup\redist\dotNetFx45_Full_setup.exe').
[335C:3440][2013-04-29T13:51:41]e313: Failed to acquire payload: NetFx45Web
to working path:
C:\Users\admin\AppData\Local\Temp\{ab28ebc1-ce07-49bf-bb1f-bb83a4944aeb}\NetFx45Web,
error: 0x80070002.
[335C:164C][2013-04-29T13:51:41]e000: Error 0x80070002: Failed while
caching, aborting execution.
[335C:164C][2013-04-29T13:51:41]i399: Apply complete, result: 0x80070002,
restart: None, ba requested restart: No
[335C:164C][2013-04-29T13:51:43]i500: Shutting down, exit code: 0x80070002
[335C:164C][2013-04-29T13:51:43]i410: Variable: ArpSystemComponentCustom = 1
[335C:164C][2013-04-29T13:51:43]i410: Variable: NETFRAMEWORK45 = 378389
興味深いことに、マスター ログ ファイルにはパッケージ固有のログ ファイル変数名が入力されますが、Burn は実際にはそのファイルを生成しません。私の推測では、そうする前に失敗するということです。
次のように、WiX バンドルに NetFx45Web パッケージを含めました。
<PackageGroupRef Id="NetFx45Web"/>
私の BootstrapperCore.config は次のとおりです。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="wix.bootstrapper"
type="Microsoft.Tools.WindowsInstallerXml.Bootstrapper.BootstrapperSectionGroup,
BootstrapperCore">
<section name="host"
type="Microsoft.Tools.WindowsInstallerXml.Bootstrapper.HostSection,
BootstrapperCore" />
</sectionGroup>
</configSections>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
</startup>
<wix.bootstrapper>
<host assemblyName="MyCustomMBA">
<supportedFramework version="v4\Full"/>
<supportedFramework version="v4\Client"/>
</host>
</wix.bootstrapper></configuration>
関連するメーリング リストのスレッドを確認しました。
そして、そこで議論されているResolveSourceの問題をカバーしています。
これが修復に失敗するのはなぜですか? インストール/アンインストールは完全に正常に機能します。