如何从平台SDK明确包含标头文件



我的win32应用程序已经有一个名为windows.h的文件作为其源的一部分,并且由于" inclage Directories"中指定的顺序,此Windows.h在原始Windows上获得了优先级.h(平台SDK(。但是,在某些地方,我需要包括原始Windows.h。我可以通过明确指定路径这样来做到这一点:

#include <FULL PATH OF windows.h>

但是,我不想这样做,因为那时源将依赖于Visual Studio(2012(安装的位置。

我查找了这样做的方法,一种方法是使用环境变量$(Windowssdk_includepath(,该$(Windowssdk_includepath(将扩展到正确的位置。喜欢:

首先,我定义了一个预处理器宏:

sdk_inc = $(windowssdk_includepath(

然后我包括Windows.h喜欢:

#include <SDK_INCwindows.h>

,但这也许是因为宏替换在标题文件更换后的预处理阶段进行。

关于我应该如何解决这个问题的任何建议?

尝试以下:

#include <windows.h> <- SDK
#include "windows.h" <- you own file

最新更新