WINDOWS.H已经包含错误

cod*_*rge 9 compilation visual-studio-2008


我在尝试编译一个小的c ++程序时
遇到错误错误87致命错误C1189:#error:WINDOWS.H已经包含在内.MFC应用程序不得#include c:\ program files\microsoft visual studio 9.0\vc\atlmfc\include\afxv_w32.h 16

我确保windows.h不包含在我拥有的任何项目文件中.我正在使用visual studio 2008 IDE

有什么理由吗?

sti*_*ijn 14

原因是因为什么包括WINDOWS.H:编译器不骗你.

转到项目属性 - >配置属性 - > C/C++ - >高级,并将显示包含设置为是.然后构建,编译器将显示一个列表,其中包含找到的每个包含的文件,并按照它找到的顺序,在此告诉您哪个文件最终包含windows.h


zuu*_*uuz 8

尝试在stdafx.h之前包含afxcoll.h.我有同样的问题,它修复了它.有关原始讨论,请参见http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/2ab6862f-0d90-467a-b283-f62f6aef96fe/.


Ern*_*ill 1

默认情况下,Visual Studio 会使用预编译头文件来破坏您的程序,该文件可能包含包含 windows.h 的内容。一定要在那里办理入住手续。