This documentation is archived and is not being maintained.

Debugging an Executable That Is Not Part of a Visual Studio Solution

Sometimes, you may want to debug an executable that is not part of a Visual Studio project. It may be an executable you created outside of Visual Studio or an executable you received from someone else.

The usual answer to this problem is to start the executable outside of Visual Studio and attach to it using the Visual Studio debugger. For more information, see Attaching to a Running Program or Multiple Programs.

Attaching to an application requires some manual steps, so it takes a few seconds. This slight delay means that attaching will not help if you are trying to debug a problem that occurs during startup. Also, if you are debugging a program that does not wait for user input and finishes quickly, you may not have time to attach to it. If you have Visual C++ installed, you can create an EXE project for such a program.

To create an EXE project for an existing executable

  1. From the File menu, choose Open Solution.
  2. In the Open Solution dialog box, click on the Files of type list box and choose Executable Files.
  3. Locate the executable and click OK.
This creates a temporary solution that contains the executable. Before using an execution command (such as Start), you must save the solution.

As an alternative, you can import an executable into an existing Visual Studio solution.

To import an executable into a Visual Studio solution

  1. From the File menu, choose Add Project and click Existing Project.
  2. In the Add Existing Project dialog box, locate and select the executable.
  3. Click OK.
  4. Start the executable by choosing an execution command, such as Start, from the Debug menu.
    Tip   Not all programming languages support EXE projects. Install Visual C++ if you need to use this feature.

When you are debugging an executable without the source code, the available debugging features are limited, whether you attach to a running executable or add the executable to a Visual Studio solution. If the executable was built without debug information in a compatible format, available features are further limited. If you have the source code, the best approach is to import the source code into a Visual Studio and create a debug build of the executable in Visual Studio.

See Also

Debug Settings and Preparation