You only need to sign the bundle. I use the following inside of my *.WixProj.
<Target Name="UsesFrameworkSdk"> <GetFrameworkSdkPath> <Output TaskParameter="Path" PropertyName="FrameworkSdkPath" /> </GetFrameworkSdkPath> </Target> <Target Name="UsesSignTool" DependsOnTargets="UsesFrameworkSdk"> <PropertyGroup> <SignToolPath Condition="'@(SignToolPath)'==''">$(FrameworkSdkPath)bin\signtool.exe</SignToolPath> </PropertyGroup> </Target> <Target Name="SignBundleEngine" DependsOnTargets="UsesSignTool"> <Exec Command=""$(SignToolPath)" sign /d "Application Name Setup" /t http://timestamp.digicert.com /a "@(SignBundleEngine)"" /> </Target> <Target Name="SignBundle" DependsOnTargets="UsesSignTool"> <Exec Command=""$(SignToolPath)" sign /d " Application Name Setup " /t http://timestamp.digicert.com /a "@(SignBundle)"" /> </Target> -----Original Message----- From: Kevin Wu [mailto:y...@slb.com] Sent: Thursday, May 23, 2013 9:26 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] How to digitally sign a bootstrapped installer with 3rd party installers bundled? Hi, I'm not well-versed with WiX yet. I'm maintaining a small WiX project with some 3rd party installers bootstrapped with our own .msi file. Now we are asked to digitally sign the setup.exe. We use the Microsoft tool SignTool.exe to do it. It appeared the signing was successful. But the setup.exe fails in the middle. If I only sign the non-bootstrapped setup.msi, then there is no problem. The 3rd party installers are Microsoft .NET 4.0 Full, Microsoft Visual Studio 2012 VC++ Redistributable, and the "OPC" Runtime installer. I'm guessing the signing must be applied to all the 3rd party installers too. But apparently we can't sign other companies' stuff with my company's certificate. I have attached the log file below. It appears the setup.exe can't extract the 3rd party installers anymore after signing. I'm also attaching the bundle.wxs below. With the release pressure mounting, I really need to find a solution quick. Can someone kindly advise me how we are supposed to deal with this kind of situation in general? By the way, I'm using WiX 3.6. Thank you very much! The bundle.wxs: <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension" xmlns:Util="http://schemas.microsoft.com/wix/UtilExtension"> <Bundle Name="eWAFE $(env.EWAFE_VERSION) Build $(env.BUILD_NAME)" Version="1.0.0.0" Manufacturer="MY COMPANY" UpgradeCode="2E180A11-C02E-498C-8F35-F2C041A5E26B" Compressed="yes" DisableModify="yes"> <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense"> <bal:WixStandardBootstrapperApplication LicenseUrl="" SuppressOptionsUI="yes" /> </BootstrapperApplicationRef> <Chain> <PackageGroupRef Id="NetFx40Redist"/> <ExePackage SourceFile="bin\VS2012_Update1_vcredist_x86.exe" InstallCommand="/passive" Compressed="no" Cache="no" PerMachine="yes" Permanent="yes" Vital="yes" > </ExePackage> <MsiPackage SourceFile="eWAFE\PcRedistribution\OPCCoreComponents2.00Redistributable.msi" Name="OPCCoreComponents2.00Redistributable.msi" Cache="no" Compressed="no" ForcePerMachine="yes" Permanent="yes" Visible="yes" /> <MsiPackage SourceFile="InstallTemp\Setup.msi" Name="eWAFE_Setup.msi" Cache="no" Compressed="yes" ForcePerMachine="yes" Visible="no"/> </Chain> </Bundle> </Wix> The logged error messages: [1894:0A7C][2013-05-17T16:24:39]: Burn v3.6.3303.0, Windows v6.1 (Build 7601: Service Pack 1), path: \\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\eWAFE_Setup.exe<file:///\\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\eWAFE_Setup.exe>, cmdline: '-burn.unelevated BurnPipe.{BC1BE86B-60D6-40EF-9747-AA6F29D6E67B} {AD9F6F2A-F1B9-4CAD-B73A-822EAACCC152} 9120' [1894:0A7C][2013-05-17T16:24:39]: Setting string variable 'WixBundleLog' to value 'C:\Users\YWu2\AppData\Local\Temp\eWAFE_1187_Build_eWAFE11_Release_25_20130517162439.log' [1894:0A7C][2013-05-17T16:24:39]: Setting string variable 'WixBundleOriginalSource' to value '\\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\eWAFE_Setup.exe' [1894:0A7C][2013-05-17T16:24:39]: Setting string variable 'WixBundleName' to value 'eWAFE 1187 Build eWAFE11_Release_25' [1894:0A7C][2013-05-17T16:24:39]: Detect 2 packages [1894:0A7C][2013-05-17T16:24:39]: Detected package: OPCCoreComponents2.00Redistributable.msi, state: Present, cached: None [1894:0A7C][2013-05-17T16:24:39]: Detected package: eWAFE_Setup.msi, state: Absent, cached: None [1894:0A7C][2013-05-17T16:24:39]: Detect complete, result: 0x0 [1894:0A7C][2013-05-17T16:24:40]: Plan 2 packages, action: Install [1894:0A7C][2013-05-17T16:24:40]: Setting string variable 'WixBundleRollbackLog_eWAFE_Setup.msi' to value 'C:\Users\YWu2\AppData\Local\Temp\eWAFE_1187_Build_eWAFE11_Release_25_20130517162439_0_eWAFE_Setup.msi_rollback.log' [1894:0A7C][2013-05-17T16:24:40]: Setting string variable 'WixBundleLog_eWAFE_Setup.msi' to value 'C:\Users\YWu2\AppData\Local\Temp\eWAFE_1187_Build_eWAFE11_Release_25_20130517162439_0_eWAFE_Setup.msi.log' [1894:0A7C][2013-05-17T16:24:40]: Planned package: OPCCoreComponents2.00Redistributable.msi, state: Present, default requested: Present, ba requested: Present, execute: None, rollback: None, cache: No, uncache: No, dependency: Register [1894:0A7C][2013-05-17T16:24:40]: Planned package: eWAFE_Setup.msi, state: Absent, default requested: Present, ba requested: Present, execute: Install, rollback: Uninstall, cache: Yes, uncache: Yes, dependency: Register [1894:0A7C][2013-05-17T16:24:40]: Plan complete, result: 0x0 [1894:0A7C][2013-05-17T16:24:40]: Apply begin [23A0:2284][2013-05-17T16:24:40]: Creating a system restore point. [23A0:2284][2013-05-17T16:24:47]: Created a system restore point. [23A0:2284][2013-05-17T16:24:47]: Caching bundle from: 'C:\Users\YWu2\AppData\Local\Temp\{70c050a2-6773-41fb-b232-c4ec25673aaf}\.be\eWAFE_Setup.exe' to: 'C:\ProgramData\Package Cache\{70c050a2-6773-41fb-b232-c4ec25673aaf}\eWAFE_Setup.exe' [23A0:2284][2013-05-17T16:24:48]: Registering bundle dependency provider: {70c050a2-6773-41fb-b232-c4ec25673aaf}, version: 1.0.0.0 [1894:16F4][2013-05-17T16:24:48]: Acquiring container: WixAttachedContainer, copy from: \\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\eWAFE_Setup.exe<file:///\\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\eWAFE_Setup.exe> [1894:16F4][2013-05-17T16:24:50]: Setting string variable 'WixBundleLastUsedSource' to value '\\slb-h1mj7v1.dir.slb.com\eWAFE\Baselines\eWAFE11_Release_25\debug\eWAFE\Installers\' [1894:239C][2013-05-17T16:24:50]: Error 0x80004005: Failed to extract all files from container. [1894:16F4][2013-05-17T16:24:50]: Error 0x80004005: Failed to wait for operation complete. [1894:16F4][2013-05-17T16:24:50]: Error 0x80004005: Failed to open container. [1894:16F4][2013-05-17T16:24:50]: Error 0x80004005: Failed to open container: WixAttachedContainer. [1894:16F4][2013-05-17T16:24:50]: Failed to extract payloads from container: WixAttachedContainer to working path: C:\Users\YWu2\AppData\Local\Temp\{70c050a2-6773-41fb-b232-c4ec25673aaf}\FC3D2781036F108A4B6A9C363985E8140DD63DFB, error: 0x80004005. [1894:0A7C][2013-05-17T16:24:50]: Error 0x80004005: Failed while caching, aborting execution. [23A0:2284][2013-05-17T16:24:50]: Removed bundle dependency provider: {70c050a2-6773-41fb-b232-c4ec25673aaf} [23A0:2284][2013-05-17T16:24:50]: Removing cached bundle: {70c050a2-6773-41fb-b232-c4ec25673aaf}, from path: C:\ProgramData\Package Cache\{70c050a2-6773-41fb-b232-c4ec25673aaf}\ [1894:0A7C][2013-05-17T16:24:50]: Apply complete, result: 0x80004005, restart: None, ba requested restart: No ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users