Determining Which DLLs to Redistribute
The first step in determining which files you need to redistribute with your application is to clearly understand the dependencies of this application and collect a list of dependent DLLs by using, for example, Dependency Walker (depends.exe) as described in.
As you use DUMPBIN or depends.exe to view your dependencies, use the file list in Redist.txt to see which of the DLLs that your application depends on are Microsoft-supplied DLLs that are part of Visual Studio. Redist.txt is located in the Program Files\Microsoft Visual Studio 2005 directory on the second Visual Studio 2005 product CD or on the DVD. Below is a list of Visual C++ files your application might depend on. However, only files specified in Redist.txt may be redistributed with your application. Note that debug versions of an application are not redistributable and that none of the debug versions of the various Visual C++ dynamic-link libraries (DLLs) are redistributable. For additional information, please see.
|DLL Name||Visual C++ Library|
Active Template Library
C Runtime and Standard C++ Libraries
Microsoft Foundation Classes
For additional information on how redistribute these DLLs with your application please see. For examples, see .
Normally, you should not need to redistribute system DLLs (for example, Kernel32.dll, User32.dll, Ole32.dll, or ShDocVW.dll) because these DLLs are part of the operating system and are present on any computer with the same version of the operating system installed. However, there might be exceptions, such as in the case where your application is going to run on several versions of Microsoft operating systems. Be sure to read the corresponding licensing agreements if you encounter such a need. If possible, try to get the system DLLs upgraded either through service packs or by small redistributable packages made available by Microsoft. You can search and identify any such available packages from the Knowledge Base articles in the MSDN Library or at.