问题
So I tried moving my project to Visual C++ Express 2010 on Windows 7 from a previous version on Windows XP. I got all sorts of errors where atlbase.h was not found. This isn't so much a question but I wanted to document what my resolution was for others.
Copied the following PlatformSDK files from my previous install and put them on my Windows 7 machine.
PlatformSDK/include/atl
PlatformSDK/include/mfc
PlatformSDK/lib
PlatformSDK/src/atl
I then change the VC++ Directories in the project Properties to point to those directories.
Include Directories-
*include/atl
*include/mfc
Library Directories-
*lib
Source Directories-
*src/atl
Make a change to stdafx.h
right after this line: #include "atlbase.h"
add this line: extern CComModule _Module;
Hopefully you're ready to go now! Probably not but perhaps you are well on your way.
回答1:
ATL and MFC were not included into free Express versions of Visual Studio. This is the primary reason behind the problems locating the include file. ATL still is is part WDK. If you have ATL isntalled with a previous version of VS, or with WDK, you need to go to project setting an update your includ directories respectively, so that ATL *.h files are picked up. See post below for more details and discussion.
- How to add WTL and ATL to visual studio c++ express 2008
- Why were MFC, ATL and masm not included in VC++ Express?
- Please include ATL to VC++2010 Express or Windows SDK
回答2:
this is probably because the previous version that you were using was visual c++ 6.0 and that doesn't support it
回答3:
ATM, it seems to be non-free.
SDK v7.0 Samples -- no atlbase.h
回答4:
There is now an ATL-inspired WRL library for the Windows Runtime that apparently supports building Classic COM objects (see http://msdn.microsoft.com/en-us/library/jj822931.aspx). It is included in Express but I haven't tried it.
Even though ATL 7.1 is in WDK 7.1 it's quite annoying to set up so please consider voting to bring back ATL to VS Express ;) https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3252947-add-atl-to-visual-studio-2010-express-for-desktop
来源:https://stackoverflow.com/questions/2681050/atlbase-h-not-found-when-using-visual-c-express-2010