Installation of Visual Studio 2010 (any edition) installs only 2 files in the C++ headers directory

Bear Golightly picture Bear Golightly · Sep 17, 2012 · Viewed 14.2k times · Source

I installed Visual Studio 2010 Premium on my Windows 7 workstation. After loading a test C++ project, I noticed that it could not locate iostream. I took a look in C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include and noticed that only two files exist here, srv.h and wmiatlprov.h

I installed the VS2010 product on a test virtual machine, and this directory (...\VC\include) is filled with the usual collection of folders and headers (the materials you'd expect to find in the includes directory.)

I have taken the following steps to rectify the missing headers on the problem workstation:

  • Verified that I have no A/V software active (I am using MS Security Essentials, realtime is disabled)
  • Uninstalled Visual Studio 2010 Premium and all other sub-products from Programs & Features
  • Ran the VS2010 Uninstall Tool with the /full and /netfx parameters
  • Deleted the Visual Studio 10.0 directories from both Program Files and Program Files (x86)
  • Reinstalled Visual Studio 2010 from a freshly downloaded ISO from MSDN.

I also completed the above steps, but used a different edition for the reinstall, VS2010 Professional.

So far, nothing above has been able to produce an installed Visual Studio 2010 product with all of the C++ headers installed on my workstation.

Ideas?

Answer

kaba picture kaba · May 16, 2013

The solution to this problem is as follows. It is based on the solution given in

http://connect.microsoft.com/VisualStudio/feedback/details/774158/re-installed-visual-studio-2010-and-c-standard-headers-are-missing

  • Uninstall Visual Studio 2010.
  • Uninstall Visual Studio 2010 SP1 (despite the warning it gives).
  • Open Registry Editor (regedit).
  • Search for keys named PaddedVersion
  • Remove any parent keys VisualStudio\10.0\VC\Libraries, or similar (note the version number 10.0, which corresponds to 2010). Delete all of these registry paths. The search for the PaddedVersion key is just to ease up this search.
  • Install Visual Studio 2010.
  • Install Visual Studio 2010 SP1.

This solution may not be minimal, but it works for me. Hopefully others can confirm. The important difference here is that it is not just the HKEY_LOCAL_MACHINE from which the registry path must be deleted, as indicated in the link above.