针对不同版本的Windows的条件编译

时间:2013-08-28 22:49:03

标签: visual-c++

您好,有没有人能举例说明我们如何在不同版本的操作系统中使用条件编译? 例如,我想要一个根据版本win32或win64或在其他平台上运行的程序

1 个答案:

答案 0 :(得分:2)

我认为你想要的是here on MSDN。基本上,您#define WINVER表示目标操作系统。

这是该页面的相关部分:

  

设置WINVER或_WIN32_WINNT

     

您可以在每个符号中使用#define语句来定义这些符号   源文件,或通过指定支持的/ D编译器选项   Visual C ++。

     

例如,要在源文件中设置WINVER,请使用以下命令   语句:

#define WINVER 0x0502
     

要在源文件中设置_WIN32_WINNT,请使用以下语句:

#define _WIN32_WINNT 0x0502
     

要使用/ D编译器选项设置_WIN32_WINNT,请使用以下命令   命令:

cl -c /D_WIN32_WINNT=0x0502 source.cpp
     

有关使用/ D编译器选项的信息,请参阅/ D(预处理器   定义)。