WIX Bundle自定义UI不安装包

时间:2013-12-20 20:01:31

标签: wix burn

我已经设置了自定义UI启动带应用程序。它似乎非常标准,我不确定该问题与自定义UI端有什么关系。

问题是当我按下c#代码Engine.Plan(LaunchAction.Install);

的安装和调用时

没有任何反应,没有安装软件包,也没有从bootsrapppplication中触发任何事件。日志会更新一条消息,告诉我它正在尝试安装?

'Plan begin, 6 packages, action: Install'

[2AC8:28C8][2013-12-20T13:55:22]i001: Burn v3.9.10.0, Windows v6.1 (Build 7601: Service Pack 1), path: C:\Projects\insite-ship\trunk\Insite.Ship\InstallerPackages\FullInstall.exe, cmdline: '-burn.unelevated BurnPipe.{782B0AE9-76D2-4CD2-A177-04B969ED5DC1} {475E24AF-43DA-4A90-9484-2B12BBD7CD34} 11044'
[2AC8:28C8][2013-12-20T13:55:22]i000: Initializing string variable 'INSTALLSQL' to value 'true'
[2AC8:28C8][2013-12-20T13:55:22]i000: Initializing string variable 'InstallEpicor' to value 'true'
[2AC8:28C8][2013-12-20T13:55:22]i000: Initializing string variable 'InstallIntegration' to value 'true'
[2AC8:28C8][2013-12-20T13:55:22]i000: Initializing string variable 'InstallPrint' to value 'true'
[2AC8:28C8][2013-12-20T13:55:22]i000: Initializing string variable 'InstallWeb' to value 'true'
[2AC8:28C8][2013-12-20T13:55:22]i000: Setting string variable 'WixBundleLog' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522.log'
[2AC8:28C8][2013-12-20T13:55:22]i000: Setting string variable 'WixBundleOriginalSource' to value 'C:\Projects\insite-ship\trunk\Insite.Ship\InstallerPackages\FullInstall.exe'
[2AC8:28C8][2013-12-20T13:55:22]i000: Setting string variable 'WixBundleName' to value 'Insite Ship Installer FULL'
[2AC8:28C8][2013-12-20T13:55:22]i000: Loading managed bootstrapper application.
[2AC8:28C8][2013-12-20T13:55:22]i000: Creating BA thread to run asynchronously.
[2AC8:2040][2013-12-20T13:55:22]i000: Launching custom TestBA UX
[2AC8:28C8][2013-12-20T13:55:22]i100: Detect begin, 6 packages
[2AC8:28C8][2013-12-20T13:55:22]i000: Setting string variable 'Netfx4x64FullVersion' to value '4.5.50938'
[2AC8:28C8][2013-12-20T13:55:22]i000: Setting string variable 'Netfx4FullVersion' to value '4.5.50938'
[2AC8:28C8][2013-12-20T13:55:22]i052: Condition 'Netfx4FullVersion AND (NOT VersionNT64 OR Netfx4x64FullVersion)' evaluates to true.
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: Netfx4Full, state: Present, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: sql, state: Absent, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: epicor, state: Absent, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: integration, state: Absent, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: Print, state: Absent, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i101: Detected package: Web, state: Absent, cached: None
[2AC8:28C8][2013-12-20T13:55:22]i199: Detect complete, result: 0x0
[2AC8:28C8][2013-12-20T13:55:29]i200: Plan begin, 6 packages, action: Install
[2AC8:28C8][2013-12-20T13:55:29]w321: Skipping dependency registration on package with no dependency providers: Netfx4Full
[2AC8:28C8][2013-12-20T13:55:29]w321: Skipping dependency registration on package with no dependency providers: sql
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleLog_sql' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_0_sql.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleRollbackLog_epicor' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_1_epicor_rollback.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleLog_epicor' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_1_epicor.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleRollbackLog_integration' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_2_integration_rollback.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleLog_integration' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_2_integration.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleRollbackLog_Print' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_3_Print_rollback.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleLog_Print' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_3_Print.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleRollbackLog_Web' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_4_Web_rollback.log'
[2AC8:28C8][2013-12-20T13:55:29]i000: Setting string variable 'WixBundleLog_Web' to value 'C:\Users\pwade\AppData\Local\Temp\Insite_Ship_Installer_FULL_20131220135522_4_Web.log'
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: Netfx4Full, state: Present, default requested: Present, ba requested: Present, execute: None, rollback: None, cache: No, uncache: No, dependency: None
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: sql, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: None, cache: Yes, uncache: No, dependency: None
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: epicor, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: No, dependency: Register
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: integration, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: No, dependency: Register
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: Print, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: No, dependency: Register
[2AC8:28C8][2013-12-20T13:55:29]i201: Planned package: Web, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: No, dependency: Register
[2AC8:28C8][2013-12-20T13:55:29]i299: Plan complete, result: 0x0

1 个答案:

答案 0 :(得分:3)

调用Plan()只是设置执行计划。为了实际执行操作(安装/卸载等,包),您需要通过调用Engine.Apply(IntPtr.Zero)来遵循计划。

注意:您需要挂钩PlanComplete事件以了解计划何时实际完成,因为它是异步过程。

我写了一系列有关编写Wix自定义托管UI安装程序的博客文章,其中第4部分和第5部分讨论了这个过程,您可能会发现它们很有用:

http://www.wrightfully.com/2013/01/part-1-of-writing-your-own-net-based.html