User Guide

on the users machine.
MSVC6 was using msvcrt.dll, which is already available on all recent windows systems - no need to
redistribute anything. Starting with MSVC7, it is necessary to ship the C runtime DLL
(msvcr<version>.dll) together with the application installer somehow, as that DLL is possibly not
available on the target system.
Note!
The files to redistribute must be mentioned in the redist.txt file of the compiler pack-
age - otherwise it can't be legally redistributed by third parties like us!
The following MSDN links are recommended for the interested reader:
"Redistributing Visual C++ Files"
"How to: Deploy using XCopy"
"Redistribution of the shared C runtime component in Visual C++ 2005 and in Visual C++
.NET"
4.4.6.1. msvcrt.dll - Version 6.0
Redistributables weren't an issue with MSVC 6, as any realistic installer target system (>= Win95)
already contains the corresponding msvcrt.dll.
4.4.6.2. msvcr70.dll - Version 7.0 (2002)
"Visual Studio .NET (2002)" - comes with this dll and it's mentioned in redist.txt.
".NET Framework SDK 1.0" doesn't even come with this dll. XXX - Is this file available with
the .NET 1.0 runtime (dotnetfx.exe) - so it could be shipped instead?!? Do we want it that way?
4.4.6.3. msvcr71.dll - Version 7.1 (2003)
"Visual Studio .NET 2003" comes with this dll and it's mentioned in redist.txt.
".NET Framework SDK 1.1" comes with this dll, but it's NOT mentioned in redist.txt. XXX - Is this
file available with the .NET 1.1 runtime (dotnetfx.exe) - so it could be shipped instead ?!? Do we
want it that way?
4.4.6.4. msvcr80.dll / vcredist_x86.exe - Version 8.0 (2005)
There are three redistribution methods that MSDN mentions for MSVC 8 (see: " Choosing a De-
ployment Method"):
1. "Redistributable Merge Modules" (kind of loadable modules for building msi installers - not
suitable for Wireshark's NSIS based installer)
2. copy the folder content of Microsoft.VC80.CRT to the target directory (e.g. "C:\program
files\Wireshark")
3. vcredist_x86.exe (needs to be executed on the target machine - MSDN recommends this for the
2005 Express Editions)
To save installer size, MSVC2005 uses the content of Microsoft.VC80.CRT (method 2 - this is the
Tool Reference
52