Wireshark-dev: Re: [Wireshark-dev] [Wireshark-users] Betr: Re: Missing vcredist_x86
From: Gerald Combs <gerald@xxxxxxxxxxxxx>
Date: Tue, 16 Sep 2008 10:16:48 -0700
j.snelders@xxxxxxxxxx wrote:
> On Mon, 15 Sep 2008 Gerald Combs wrote:>
>> *Which* vcredist_x86.exe solved the problem? There are at least four, one
>> for
>> each version of Visual Studio since 2005. Each has the same name, but a
>> different version:
>>
>> 2005    : 6.0.2900.2180
>> 2005 SP1: 6.0.3790.0
>> 2008    : 9.0.21022.8
>> 2008 SP1: 9.0.30729.17
> 
> We had one: 2.0.50727.762 (Visual C# 2005 Express Edition?), 
> but that one definitely did not work.
> Now I'm using version 9.0.21022.8.
> It works also fine with Wireshark version 1.1.0 (SVN Rev 26170).

As indicated above, Visual Studio 2008 ships with CRT version 9.0.21022.8. VS
2008 SP1 ships with an updated CRT (9.0.30729.17). However, applications
compiled with VC++ 2008 SP1 have manifests that ship to the old version of the
CRT. According to http://msdn.microsoft.com/en-us/library/cc664727.aspx this is
*on purpose*.

You're supposed to be able to work around the problem by defining
_BIND_TO_CURRENT_CRT_VERSION, which creates "correct" manifests, or by creating
an application config file that uses a "bindingRedirect" element to redirects
old assembly versions to the new one. I haven't been able to get either of these
to work so far.