[wix-users] Handle ISO mapping lost after reboot

Rob Mensching rob at firegiant.com
Thu Apr 16 12:06:42 PDT 2020


Sorry, that's my sig on wix-users. It's confused two people now, so I need to fix the plain text version to look more like a sig and less like part of my reply.



Short replies here. Complete answers here: https://www.firegiant.com/services/


-----Original Message-----
From: Vanniekerk, Tyrel (GE Healthcare) <tyrel.vanniekerk at ge.com> 
Sent: Thursday, April 16, 2020 11:52 AM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Cc: Rob Mensching <rob at firegiant.com>
Subject: RE: Handle ISO mapping lost after reboot

Not sure how to respond to this.  If I understand correctly, burn can cache all the setup files, but to get the answer you need a subscription to FireGiant services?

-----Original Message-----
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Rob Mensching via wix-users
Sent: Thursday, April 16, 2020 1:45 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Cc: Rob Mensching <rob at firegiant.com>
Subject: EXT: Re: [wix-users] Handle ISO mapping lost after reboot

Burn can cache all the files first.

Short replies here. Complete answers here: https://www.firegiant.com/services/

-----Original Message-----
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Vanniekerk, Tyrel (GE Healthcare) via wix-users
Sent: Thursday, April 16, 2020 11:20 AM
To: wix-users at lists.wixtoolset.org
Cc: Vanniekerk, Tyrel (GE Healthcare) <tyrel.vanniekerk at ge.com>
Subject: [wix-users] Handle ISO mapping lost after reboot

Hi guys,

Hope you are all doing well in these difficult times.

I have an installer that uses .NET Framework 4.8. We distribute the product electronically in an ISO. In most modern OS'es you double click on the ISO, it maps it to a drive and you install from there. The problem comes in when it needs to reboot after the .NET install and the ISO is no longer mapped after the reboot.  So the folder where the install was prior to the reboot non longer exists.

Does the bootstrapper copy all the setup files to a temp directory on the machine or is the only answer to this to require that the ISO get mapped through the reboot?
I am considering adding a message to the ResolveSource handler to tell the user that it cannot find the expected folder, giving them a chance to mount the ISO again and continue or cancel to abort the install.

I got some code from a similar question (function is below), but that just sent the installer into an infinite loop, creating a 6 Gig log file.  Oops.  Also below is an extract from the log file.

Is there a way to handle this scenario?

Thanks,
Tyrel


[17B0:17B4][2020-04-07T18:02:33]i300: Apply begin
[17B0:17B4][2020-04-07T18:02:33]i000: Debug: OnApplyBegin:
[17B0:162C][2020-04-07T18:02:33]i000: Showing page Progress
[17B0:17B4][2020-04-07T18:02:33]i010: Launching elevated engine process.
[17B0:17B4][2020-04-07T18:02:33]i011: Launched elevated engine process.
[17B0:17B4][2020-04-07T18:02:33]i012: Connected to elevated engine.
[05F8:03AC][2020-04-07T18:02:33]i358: Pausing automatic updates.
[05F8:03AC][2020-04-07T18:02:33]i359: Paused automatic updates.
[05F8:03AC][2020-04-07T18:02:33]i360: Creating a system restore point.
[05F8:03AC][2020-04-07T18:02:33]i362: System restore disabled, system restore point not created.
[05F8:03AC][2020-04-07T18:02:33]i371: Updating session, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{e3cf7d18-8ca3-4711-b5f7-bd26eb12ea86}, resume: Active, restart initiated: No, disable resume: No
[17B0:0D0C][2020-04-07T18:02:33]w341: Prompt for source of container: WixAttachedContainer, path: F:\MUSE_NX_APPLICATION\MuseApplication\MuseSetup.exe
[17B0:0D0C][2020-04-07T18:02:33]e054: Failed to resolve source for file: F:\MUSE_NX_APPLICATION\MuseApplication\MuseSetup.exe, error: 0x80070002.
[17B0:0D0C][2020-04-07T18:02:33]e000: Error 0x80070002: Failed while prompting for source (original path 'F:\MUSE_NX_APPLICATION\MuseApplication\MuseSetup.exe').
[17B0:0D0C][2020-04-07T18:02:33]e311: Failed to acquire container: WixAttachedContainer to working path: C:\windows\Temp\{5FB10869-66E4-4E22-AF76-ADBA9B3E5967}\14A6CB25EA565815F0F909D28868CB6D90502075, error: 0x80070002.
[17B0:17B4][2020-04-07T18:02:33]e000: Error 0x80070002: Failed while caching, aborting execution.
[05F8:03AC][2020-04-07T18:02:33]i372: Session end, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{e3cf7d18-8ca3-4711-b5f7-bd26eb12ea86}, resume: ARP, restart: None, disable resume: No
[05F8:03AC][2020-04-07T18:02:33]i371: Updating session, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{e3cf7d18-8ca3-4711-b5f7-bd26eb12ea86}, resume: ARP, restart initiated: No, disable resume: No
[17B0:17B4][2020-04-07T18:02:33]i000: Debug: OnApplyComplete: False, None


private static void OnResolveSource(object sender, ResolveSourceEventArgs e) {
    var wixBundleOriginalSource =  Bootstrapper.GetStringVariable("WixBundleOriginalSource");
    WriteDebug($"Setting local source for {e.PackageOrContainerId} to '{wixBundleOriginalSource}' (WixBundleOriginalSource)");
    Bootstrapper.Engine.SetLocalSource(e.PackageOrContainerId, e.PayloadId, wixBundleOriginalSource);
    WriteDebug($"Retry to resolve source for {e.PackageOrContainerId}");
    e.Result = Result.Retry;
}


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

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



More information about the wix-users mailing list