Redistributing Visual C++ Files

When you deploy an application, you must also deploy the files that are required to support it. If any of these files are provided by Microsoft, check whether you are permitted to redistribute them. To view a list of permitted files, see Redist.txt in the ..\Microsoft Visual Studio 10.0\ folder on the computer where Visual Studio is installed. To review the Microsoft Software License Terms, see Eula.txt on the Visual Studio 2010 installation media. For more information about redistributable files, see Determining Which DLLs to Redistribute and Deployment Examples.

To deploy Visual C++ redistributable files, you can use the Visual C++ Redistributable Package (VCRedist_x86.exe, VCRedist_x64.exe, or VCRedist_ia64.exe) that is included in Visual Studio, or use Redistributable Merge Modules, or you can directly install specific Visual C++ DLLs to the application local folder. An application local folder is a folder that contains an executable application file. DLLs must be deployed to the application local folder.

The Visual C++ Redistributable Package installs and registers all Visual C++ libraries. If you use it, you must set it to run on the target system as a prerequisite to installation of the application. We recommend that you use this package to redistribute Visual C++ libraries for applications that you build. For an example about how to use this package, see Walkthrough: Deploying a Visual C++ Application By Using the Visual C++ Redistributable Package.

If you use a merge module that contains a Visual C++ DLL, you must include it in the Windows Installer package (or similar installation package) that you are using to deploy the application. For more information, see Redistributing By Using Merge Modules. For an example, see Walkthrough: Deploying a Visual C++ Application By Using a Setup Project.

Potential Run-Time Errors

If a Visual C++ library DLL is not reachable and Windows cannot load it for your application, this message may be displayed: This application has failed to start because MSVCR100.dll was not found. Re-installing the application may fix this problem.

To resolve this kind of error, make sure that your application is built correctly and that Visual C++ libraries are correctly deployed on the target system.

Title

Description

Redistributing By Using Merge Modules

Describes how to use Visual C++ redistributable merge modules to install Visual C++ assemblies as shared DLLs in the %windir%\system32 folder.

Redistributing Visual C++ ActiveX Controls

Describes how to redistribute an application that uses ActiveX Controls.

Redistributing Database Support Files

Discusses how to redistribute support files for Data Access Objects (DAO) and the database technologies in the Microsoft Data Access SDK.

Redistributing the MFC Library

Describes how to redistribute an application that uses MFC.

Redistributing ATL and OLE DB Templates

Describes how to redistribute an application that uses ATL and OLE DB templates.

Redistributing Common Controls

Describes how to redistribute an application that uses the latest Windows common controls (Comctl32.dll) that are available with the latest version of Internet Explorer.

Deployment Examples

Links to examples that demonstrate how to deploy Visual C++ applications.

Deployment (Visual C++)

Introduces Visual C++ deployment concepts and technologies.