tambre
tambre

Reputation: 4853

Visual Studio 2015 call stack displays <Unknown function>

Recently after doing a clean install of Windows 10 Pro on my computer, I noticed that whenever I break my program and open the call stack, the call stack shows the application name and line numbers, but the function name is displayed as <Unknown function>. The call stack can be navigated as usual, but the missing function names are very annoying.

I've tried the following:

Even creating a new Win32 C++ console application from the default template and breaking on the return 0; nets <Unknown function>'s in the call stack.

Example:
Example.

How would I make the call stack display the correct function names?

Upvotes: 3

Views: 2654

Answers (2)

tambre
tambre

Reputation: 4853

The problem turned out to be the missing cppdebug.dll and cppdebug.vsdconfig from the Common7\Packages\Debugger, as Patrick suspected. Visual Studio unfortunately gives no indication of them missing being a problem and reinstalling or repairing the installation doesn't help either. Fortunately, I was able to obtain those files through other means.
Placing the files equivalent to your Visual Studio version fixes the problem.

cppdebug.dll and cppdebug.vsdconfig for different Visual Studio versions:

Upvotes: 0

Patrick Nelson - MSFT
Patrick Nelson - MSFT

Reputation: 3170

This error message means the component of the debugger which formats the text for C++ stack frames is failing. I've seen this happen when the installer leaves Visual Studio with mismatching binaries. Here are things I would try:

  1. First make sure this isn't being caused by a faulty extension by running VS in safe mode via devenv.exe /safemode see Visual Studio Command Line Switches.

  2. Uninstall any VS extensions, then uninstall VS and make sure all files are deleted from C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Packages\Debugger (may need to change the path if you installed VS somewhere else), then try reinstalling.

  3. If that doesn't fix it, then you may have a problem with your Windows install. You can try running depends.exe on cppdebug.dll and see if you can determine which dependency is missing.

Upvotes: 2

Related Questions