[wix-users] Propagating /norestart to ExePackage payloads

Phill Hogland phill.hogland at rimage.com
Wed Sep 23 15:28:27 PDT 2015

A few weeks ago I implemented signaling that a CA needed a reboot and handling the reboot in the middle of my chain.  Not the same as your goal but similar.  I wish this forum had a search like the old forum so that I could reference the old threads.  But as others suggested looking at the WixStdBA source was a good guide.

Microsoft.Tools.WindowsInstallerXml.Bootstrapper.Restart is initialized by Burn to reflect the command line input to the Bundle (IIRC).

Various handlers have a Restart member of the EventsArgs.  Not what you are asking but to handle a reboot in the middle of a chain look at AfterForcedRestartPackage at functions which use an atom named WcaDeferredActionRequiresReboot.


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Edwin Castro
Sent: Wednesday, September 23, 2015 4:48 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: [wix-users] Propagating /norestart to ExePackage payloads

I have a bundle that uses ExePackage to install the Visual C++ runtime. We typically execute our bundle with the /norestart command line argument because we want system administrators to decide when the reboot should occur rather than the installer. We specify the /quiet and /log arguments to the Visual C++ runtime exe installer (it appears to be a burn bundle as well based on the log produced).

Every so often we see that the Visual C++ runtime installer requests a reboot because a file it wanted to replace was in use and a reboot is required to complete the install. The behavior we're seeing is that our bundle continues installing its packages but the system reboots while we're still installing. This causes our remaining packages to fail in many different ways. We'd like to avoid the restart at all costs and give system administrators the chance to schedule the reboot themselves at some point in time after the install has completed.

Is there a way to force /norestart within the bundle itself without using the /norestart command line argument?

If not, is there way to detect if /norestart was set so that I can customize the ExePackage/@InstallCommand for Visual C++ with /norestart if our bundle was executed with /norestart?

Edwin G. Castro

WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

More information about the wix-users mailing list