Usually I am happy when the problem I have faced for a while appears to be 
solved but when I don't know why, a bad feeling remains. The problem is this:
 
I use WiX 3.9 (3.9.1006.0) and I have a custom WPF bootstrapper application 
which requires .Net 4 (Full version) so naturally when I try to run the 
installer on a computer that does not have .Net 4 my BA fails to load and 
instead the default bootstrapper for .Net 4 appears allowing me to install it. 
When .Net 4 is installed I am asked to reboot my computer and after booting up 
again my installation automatically resumes. So far everything is fine but in 
the next step the problem occurs. I click through the steps of my installer and 
when it normally starts installing the packages in the bundle chain I am 
notified that the installation failed. When I checked the log afterwards I 
discovered the following error(s):
 
[07DC:07D8][2015-06-03T13:45:55]i300: Apply begin
[0688:07A4][2015-06-03T13:45:55]i360: Creating a system restore point.
[0688:07A4][2015-06-03T13:46:00]i361: Created a system restore point.
[07DC:0BA8][2015-06-03T13:46:00]i336: Acquiring container: 
WixAttachedContainer, copy from: C:\ProgramData\Package 
Cache\{f2234eba-50ab-42cd-a6bf-dca86e2f3fce}\MyInstall.exe
[07DC:0BA8][2015-06-03T13:46:00]i000: Setting string variable 
'WixBundleLastUsedSource' to value 'C:\ProgramData\Package 
Cache\{f2234eba-50ab-42cd-a6bf-dca86e2f3fce}\'
[07DC:0BB4][2015-06-03T13:46:00]e000: Error 0x80070001: Failed to extract all 
files from container, erf: 1:2:0
[07DC:0BA8][2015-06-03T13:46:00]e000: Error 0x80070001: Failed to wait for 
operation complete.
[07DC:0BA8][2015-06-03T13:46:00]e000: Error 0x80070001: Failed to open 
container.
[07DC:0BA8][2015-06-03T13:46:00]e000: Error 0x80070001: Failed to open 
container: WixAttachedContainer.
[07DC:0BA8][2015-06-03T13:46:00]e312: Failed to extract payloads from 
container: WixAttachedContainer to working path: 
C:\Users\testuser\AppData\Local\Temp\{f2234eba-50ab-42cd-a6bf-dca86e2f3fce}\7B32FBD553AC13EB47FDA0D0B59B78C0FE57C7F6,
 error: 0x80070001.
[07DC:07D8][2015-06-03T13:46:00]e000: Error 0x80070001: Failed while caching, 
aborting execution.
[07DC:07D8][2015-06-03T13:46:00]i000: [ ApplyComplete ] Failed -2147024895
[07DC:07D8][2015-06-03T13:46:00]i399: Apply complete, result: 0x80070001, 
restart: None, ba requested restart:  No
[07DC:07D8][2015-06-03T13:46:03]i500: Shutting down, exit code: 0x80070001
 
Here is some information that may be of use to you when trying to help me:
I always use a clean Windows 7 x64 installation when testing.The bundle chain 
contains the following packages:Visual C++ 2010 SP1 Redist (x86)Visual C++ 2010 
SP1 Redist (x64)Msi for my product (x64, contains both 64-bit and 32-bit files) 
When trying to run my installer again I can see in the new log that the 
following seems to have happened during the first attempt to install:
The bundle is detected as installed. Perhaps this explains why there is an 
entry for my application in the  "Programs and Features" list.All of the 
packages in the bundle chain are detected as absent which explains why none of 
my files have been copied to the computer. 
How is it possible that the bundle is considered installed when neither of its 
chain packages were installed?
 
What I have noticed during testing is that when .Net 4 is already installed and 
no reboot is required during the installation everything works fine. Also if I 
cancel the installation when it is automatically resumed after the reboot 
(after .Net 4 is installed) and then start the installation again, everything 
works fine.
 
And now to what is confusing me even more... Today after rebuilding a new 
installation (including BA) with no real changes that I can think of the 
problem appears to be gone! I have successfully installed my application 
several times under the same testing conditions as when the problem used to 
occur. Something must have changed with my installer but I don't know what.
 
One difference I see in the logs of the failed installation and the successful 
installation is:
Failed installation:
[07DC:0BA8][2015-06-03T13:46:00]i336: Acquiring container: 
WixAttachedContainer, copy from: C:\ProgramData\Package 
Cache\{f2234eba-50ab-42cd-a6bf-dca86e2f3fce}\MyInstall.exe 
Successful installation:
[06E8:0BF4][2015-06-04T09:30:49]i336: Acquiring container: 
WixAttachedContainer, copy from: 
C:\Users\testuser\Desktop\MyProject\x64\MyInstall.exe
 
You can see that the installations are using different paths for aquiring the 
container, one uses some cached location while the other uses the path to the 
original installer. What could have caused this change? This is not something I 
have changed intentionally.
 
Any ideas what could have caused the error above and what change could have 
fixed it? When I have googled the error there seems to be a lot of mentioning 
of the bootstrapper not being properly signed but we have never signed it in 
the past and we have no certificate so I am thinking it must be something else; 
especially now that it seems to be working and I have not signed anything.
 
I appreciate any help trying to figure out what is going on. Right now I am a 
bit uncomfortable releasing the installer to our customers without knowing what 
caused this problem in the first place. If you need any more information I will 
do my best to provide it.
 
Best regards
Daniel
 
 
                                          
------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to