We avoided this headache by having our bootstrapper install two MSIs (one
for "core" and one for "loc") for each product. This way we could install as
many LOCs as we wanted and we could write patches against any/all that
needed to be upgraded without these issues. It does require bootstrapping
the patches to help ensure that changes that affect both core and loc are
properly applied to all, and it helps to use MSI 4.5 to avoid having to
track the applications yourself to avoid having to remove a patch if the
application fails at a later stage in your bootstrapper.

-----Original Message-----
From: Gareth [mailto:gmor...@serif.com] 
Sent: Wednesday, September 23, 2009 8:33 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Multi language patching


I've hit upon a problem and thing it's to do with the defined
ProductLanguage
property of my MSI, but would appreciate some advice to see if I'm chasing
the right path.

I have a package that is entirely US English, but I have several transforms
for other languages, French for example.  This is all handled by the
bootstrapper in the traditional way.  One of the key elements of the package
is that I have language specific features (including those for the different
loc dlls that translate the UI of the application) that are conditionally
installed depending on the ProductLanguage property, which is appropriately
set by the transform - in the French case, transforming 1033 into 1036.

When it comes to patching, the loc dlls are not updating despite the log of
the patch creation knowing they have changed.  The actual MSP execution log
says that the versions are the same and that there's nothing to do - this is
bogus.

My thought is that since my admin extractions from which the patch were made
have a ProductLanguage of 1033, that the patch, when applied to an
installation where the ProductLanguage is 1036, is deliberately skipping
dlls that have their language defined as anything other than 1033.  There is
some evidence to support this since the main exe/dlls are patching, it is
just the loc dlls that have the French locale defined and that are being
skipped.  Curiously, one of the loc dlls has changed from French to English
by mistake and this DOES patch, but not in a delta patch, only when
specified to include as a whole file.

Has anyone have any experience of this?  I've considered setting the
ProductLanguage of my MSI to 0 (zero) and to create another transform for
the English case to change it to 1033 - or perhaps to define all langages in
the ProductLanguage property and use something else in my component
conditions.

Many thanks for any input.
Gareth
-- 
View this message in context:
http://n2.nabble.com/Multi-language-patching-tp3700410p3700410.html
Sent from the wix-users mailing list archive at Nabble.com.

----------------------------------------------------------------------------
--
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to