首页 > 解决方案 > 指定 Windows/MFC API 版本所需的标准 Windows 预处理器定义是什么?

问题描述

我正在努力找出 C++/MFC 模块中与 AFX 相关的奇怪错误,我的工作理论是,不同模块的构建方式与 Windows 库相关的方式存在一些差异。

我们在项目文件和头文件中有各种预处理器设置,我想找到此类定义的标准列表,因此我可以轻松搜索所有引用并检查不一致之处。例如,我刚刚发现在一个项目中,我们拥有/D "_WIN32_WINNT=0x0501" 并且 /D "WINVER=0x0601

我们通常在以下方面使用变体:

是否有所有常用的列表?是否有标准值的名称而不是使用例如0x0601Do 其中一些推断/控制其他值,以便我们可以简化项目文件中的更少选项(为什么我们有 WINVER 和 _WIN32_WINNT)?

我担心我会尝试整理这一切,但在我不知道的地方错过了一个定义!

标签: visual-studiowinapivisual-c++mfcvisual-studio-2019

解决方案


推荐阅读