We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

Preparing a Test Machine To Run a Debug Executable

To prepare a computer to test the debug version of an application built with Visual C++ you need to deploy debug versions of Visual C++ libraries that the application depends on. To identify what libraries have to be deployed, follow the steps outlined in Understanding Dependencies of a Visual C++ Application. Debug versions of Visual C++ library DLLs usually have names that end in "d"; for example, the debug version of the CRT DLL msvcr100.dll is named msvcr100d.dll.


Debug versions of an application are not redistributable and none of the debug versions of the various Visual C++ dynamic-link libraries (DLLs) are redistributable. Debug versions of an application and Visual C++ libraries can only be deployed to another computer internal to your development site for the sole purpose of debugging and testing your application on a computer that does not have Visual C++ 2010 installed. For more information please see, Redistributing Visual C++ Files.

There are two ways of deploying debug versions of Visual C++ libraries along with the debug version of an application:

  1. Use Merge Modules to install a debug version of a particular Visual C++ DLL to the %windir%\system32 directory. An example of this deployment may be found in Walkthrough: Deploying a Visual C++ Application By Using a Setup Project.


    Visual C++ Express does not support Setup Projects.

  2. Install a particular Visual C++ DLL for the application using files provided in the Program Files\Microsoft Visual Studio v10.0\VC\Redist\debug_nonredist directory.


    For remote debugging your application on another computer, you have to deploy debug versions of Visual C++ libraries as shared side-by-side assemblies. You may either use Setup projects or Windows Installer to install corresponding merge modules using the steps described above. After Visual C++ libraries are installed you may run a remote debugger off a network share. For more information on remote debugging, please see How to: Set Up Remote Debugging.