Several times I came across several different variants of this problem: problems that resolve both header files and library dependencies on projects upgraded from VS2012 to VS2015.
Hans comment in response to my question really fixes the problem for headers, but after you come across the same problem for library dependencies, I have something that might be a simpler solution that also works to resolve a failed library.
When you open a VS2012 project in VS2015, automatic updating is not performed. Opening the project properties and changing the General β Platform Toolset for Visual Studio 2015 (v140) will probably reproduce either a variant of the header resolution error described in my original question, or another library dependency resolution error.
The easiest way to find this is to open the project properties and go to the VC ++ directories β Include directories. Among any paths that you could add to your project yourself, you will probably find $ (VCInstallDir) \ include; $ (VCInstallDir \ atlmfc \ include; $ (WindowsSDK_IncludePath)
Click on the path to display the drop-down list and click "Edit", a dialog box will appear on the screen with three sections, from top to bottom, explicitly defined paths, estimated paths and inherited paths. At the very bottom is the "Inherit from parent or default projects" checkbox, which I always considered initially unchecked.
From explicitly defined include paths, remove the $ (VCInstallDir) \ include entries; $ (VCInstallDir \ atlmfc \ include; $ (WindowsSDK_IncludePath) described above and set the option "Inherit from parent or project by default." This should resolve any problems with file header dependencies.
If you also have problems referencing libraries, do the same with the articles in the Library Directory, edit the settings, delete the explicit form entries and select "Inherit from Parent or Default Project". (It might be a good idea to do this even if you don't see any linker errors, otherwise you can use the platform tool compiler option for VS2015 when linking with libraries for VS2012).
I do not know why this grope me when I have not come across anyone else having similar problems. I had no problems updating Visual Studio solutions before.
I also did not find out why some versions of Windows kits now contain Windows platform headers or C ++ library headers, when previously the SDK always contained board headers, while C ++ headers were always part or parcel of Visual Studio. It seems that such a change should have a blog developer somewhere or some other documentation about it. But as long as it works, I don't care.
Hope this helps someone.