Errors in Upgrading VC++ project from VS 2010 to V

2019-09-13 00:45发布

问题:

I am trying to update a Visual C++ VS 2010 project to VS 2012. I now longer have access to reinstall VS2010 from the MSDN, so I am installing what my college has made available on the Dreamspark website, which is VS2012.

After installation I tried to build the project, and I received over 100 errors but the first one was this:

error C1083: Cannot open include file: 'SDKDDKVer.h': No such file or directory

I fixed that error by following this post, 2nd answer since there was no VS2010 installed on the computer except for two Redistributables, for x64, x86 which were uninstalled: Fresh installation of VS 2012 will not build default console application: Missing SDKDDKVer.h (and stdio.h / CRT)

and:

  • Removed Visual Studio 2010 x86, x64 Redistributables
  • Reinstalled Windows 7 SDK (and the VS2010 Redistributables for x64,x86)
  • Added new path variables to Project>Project Properties>Configuration for the 7.1 Include GL and 7.1 Lib folders which are in Program Files/Microsoft SDKs/Windows/v7.1

After doing this I reduced number of errors and warnings down to 30.

The most recent error is now:

error C1083: Cannot open include file: 'winapifamily.h': No such file or directory C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\comdef.h 51

I saw a post on how to hardcode winapifamily.h for a similar error in Codeblocks here: "winapifamily.h: No such file or directory" when compiling SDL in Code::Blocks

but what is the equivalent solution to this in VS 2012? What directory would I put the winapifamily.h file in?

EDIT: There appears to be a hotfix to the issue here, which is that the application was originally targeted for Win7 but the VS2012 targets Win8. So I am going to download the update here and see if it works: https://www.microsoft.com/en-us/download/details.aspx?id=39305

回答1:

I have fixed this problem using the hotfix mentioned in the edit (Update 4, VS2012). Additionally, there is some circular dependency problems going on in the application related to OpenCV which has nothing to do with this question, so by using the hotfix I believe I have uncovered a broader issue with openCV header files which I can resolve in a straightforward manner.