C1189: #error : 窗户。H 已包括在内。MFC 应用不得 #include < Windows.h>
C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h>
我正在构建一个C++项目,其中包括 2 个库,这些库隐式包含 2 次windows.h
:
- AFXWIN.h
- atlbase.h (不确定)
知道我需要这两个库进入我的项目,我该如何解决这个问题?
请问有什么绝妙的主意吗?
尝试使用某些外观界面隐藏提到的库,这些库包含在同一编译单元中不可见。
我在
Visual Studio 2010中构建Win32应用程序时遇到了同样的问题。对我有用的解决方案是:
- 打开标准
- 将
#include <windows.h>
替换为#include <afxwin.h>
在尝试理解"为什么我不能使用具有 WIN 类型定义和包含 Windows.h 的库"之前,我花了很多时间在我的 MFC 应用程序中使用 #include
//MyModuleName.cpp
#include "MyModuleName.h"
#include "..stdafx.h" // <--- this must be always first
修复后,所有外部库等都可以正常工作,即使在标头中的 Windows.h 中也是如此
//MyModuleName.cpp
#include "..stdafx.h" // <--- this must be always first
#include "MyModuleName.h"
相关文章:
- 既然存在危险,为什么项目要使用-I include开关
- 请解释这句话(cout<<1+int((a<b)^((b-a)&1) )<<endl
- 有充分的理由在h文件中使用include保护而不是cpp文件吗
- 呼叫运营商<<临时
- 如何将更多文件夹添加到c++include路径
- 什么是"#include <boost/functional/hash.hpp> "?
- 如何防止clang格式在流运算符调用之间添加换行符<<
- <<操作员在下面的行中工作
- 对于MacOS上的G++,如何添加默认的include目录/usr/local/include和默认的库搜索路径/usr
- C++包含来自 #include "DevEngine/Core.h" 的错误
- <filesystem> 在 clang 6 和 10 上 #include 错误
- 在 void 函数中使用 #include 变量C++
- N-API include an .so or dll
- 允许哪些令牌作为 #include 的参数?
- GCC 包含标头(使用"-include")CMake 未检测到的更改
- WebAssembly include OpenCV
- 如何在 c++ 中正确指定 #include 路径以使程序可移植
- 修改生成文件以简化框架 #include 路径
- VS2015/VC++ 在新类模板中禁用默认 #include "stdafx.h"
- opencv 2.4.7在iOS错误背景_segm.hpp #include&lt; list&gt;未找到