Sounds to me like your original package is installed in a per-user
context but your patching system is forcing everything to run as
per-machine. If you want to force a package to always be per-machine,
set InstallScope="perMachine" in your Package Element (see
http://wix.sourceforge.net/manual-wix3/wix_xsd_package.htm) but that
obviously only applies to the original MSI, not the update MSP.

However it doesn't sound like WiX or Windows Installer are the cause of
your problem if you can manually apply your patch using msiexec /update.
Try asking wpkg.org for help with their patch management software.

Palbinder Sandher 
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500 
F: +44 (0) 141 945 8501 

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456 
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer

-----Original Message-----
From: Lukasz Zalewski [mailto:lu...@eecs.qmul.ac.uk] 
Sent: 03 August 2010 20:57
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] msi upgrade problems per-user vs per-machine
contextfailure

Hi all,
I'am trying to upgrade existing package through major upgrade.
The upgrade is done through wpkg (wpkg.org) patching system and it runs
using machine account.
When i run the upgrade using Administrator account (interactively) all
goes smoothly. However when the upgrade is applied through the patching
system it goes wrong i.e. the following appears in the logs (which i
believe is the cause of my problems):
MSI (s) (78:4C) [20:14:06:466]: Determined that existing product (either
this product or the product being upgraded with a patch) is installed
per-user.

and then
MSI (s) (78:4C) [20:14:06:555]: FindRelatedProducts: current install is
per-user.  Related install for product
'{A70E99ED-87C6-4142-88A7-8491459494A2}' is per-machine.  Skipping...

I have found various post regarding similar errors which conclude that
cross-context installation is not possible. What i want to do is to
force the install to be in per-machine context. I have added ALLUSERS=1
property to the wix file, tried running msiexec with /jm flag and event
passed ALLUSERS=1 as a parameter to the installer. Still the
installation is per-user and the ALLUSERS initially set to 1 is unset:
MSI (s) (78:4C) [20:14:06:467]: PROPERTY CHANGE: Deleting ALLUSERS
property. Its current value is '1'.

I'm 100% sure that the previous version
({A70E99ED-87C6-4142-88A7-8491459494A2}) is installed per-machine.
Initially i thought it was a problem with patching system, but i have
tested upgrade process of other application and the update is correctly
installed using per-machine mode.

I have used orca to look at the various properties (of my two packages
and the other application packages), and do not see anything massively
out of ordinary. The installer script is also quite basic. I'm quite new
to wix so any help would be much appreciated

The wix version is 3.0 and machine that the package is being updated on
is Windows7 x64. I have attached zipped log file from the failed
upgrade.

Many thanks

Lukasz



------------------------------------------------------------------------------
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to