Determining Which DLLs to Redistribute
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer

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 Understanding Dependencies of a Visual C++ Application.

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 Choosing a Deployment Method.

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 Redistributing Visual C++ Files. For examples, see Deployment Examples.

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

See Also

© 2015 Microsoft