I ran into this same issue before the ATL security fix updates were
released. We had to get a hot-fix from Microsoft for the Visual Studio
2005 C++ redistributable controls as installations of MS SQL 2005 would
break our application due to being shipped with a post-SP1 version of
the controls which had an obvious bug in them (wasn't fun trying to
figure this out, I only actually reproduced it due to the Visual Studio
Express Editions installing MS SQL 2005 Express by default which one of
our non-code writing developers had installed to help him prototype
something for a requirements spec's).

Unfortunately Richard's message came in an hour & half after I left the
office & I don't check my work e-mail at weekends. Glad the accumulated
knowledge of the list got to the bottom of it though =)

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: Rob Hamflett [mailto:r...@snsys.com] 
Sent: 16 November 2009 09:37
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] best way to deploy C++ runtime?

This thread has been really enlightening.  Thanks everyone for the
information.  I had this issue a little while ago, with VS building
against one version of the runtime and the merge modules delivering
another.  After a lot of searching online I finally found the code
snippets to get VS to build against the latest version.  I then had to
go and update all our projects, including some 3rd party libraries.
We've just come up foul of this again when my boss added a new project
which didn't run properly because it was missing this special magic.  It
sounds like the policy files are pretty much required when deploying the
VC runtime as this issue is really hard to track down.  It certainly
took me long enough to find a work around, and this thread has just
shown me that I should have been including the policy files all along.
I think the How-To guide in the WiX docs should definitely be updated so
that they don't tell the reader that the policy files aren't needed. 
Actually, they say "There is generally no need..."  However, since the
update to VS that updated the merge modules, I don't think this is a
fringe case anymore.

Rob




Richard wrote:
> For the benefit of others, this appears to be by design.
> 
> By default, your application is bound to the old runtime, even though 
> the merge modules get updated (so you can't distribute the old runtime

> unless you saved a copy of the merge modules before you updated).
> 
> However, if you define _BIND_TO_CURRENT_VCLIBS_VERSION=1 when 
> compiling your code, then the automatically generated manifest will 
> bind to the updated runtime.  You have to define this from the project

> options and you have to define it for all the runtime dependencies 
> used by your application in order for everything to be bound only to 
> the new runtime.
> 
> Otherwise you must use the policy MSM and the new MSM to install the 
> new runtime and redirect users of the old runtime to the new one.  Of 
> course, that might break some applications that depended on the 
> behavior of the old one compared to the new one... but if you use the 
> vcredist_x86.exe, its going to install the policy MSM anyway it seems.


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to