zoukankan      html  css  js  c++  java
  • NTDDI_VERSION,_WIN32_WINNT,WINVER,_WIN32_IE

     在使用一些新版本的API,或者控件的新特性(比如新版的ComCtl32.dll)的时候,你可能会得到“error C2065: undeclared identifier.“这个错误。原因是这些功能是依赖于你的操作系统的版本的。而你的头文件中的定义并不是最新的。(对于MFC,就是stdafx.h)下面详细列举了每个Windows版本对应的NTDDI_VERSION_WIN32_WINNTWINVER_WIN32_IE这些宏。

    The following table describes the preferred macros in use by the Windows header files.

    Minimum system required                Macros to define
    Windows Server 2008                     NTDDI_VERSION >= NTDDI_LONGHORN
    Windows Vista                                NTDDI_VERSION >= NTDDI_VISTA
    Windows Server 2003 SP1                 NTDDI_VERSION >= NTDDI_WS03SP1
    Windows Server 2003                     NTDDI_VERSION >= NTDDI_WS03
    Windows XP SP2                          NTDDI_VERSION >= NTDDI_WINXPSP2
    Windows XP SP1                          NTDDI_VERSION >= NTDDI_WINXPSP1
    Windows XP                                  NTDDI_VERSION >= NTDDI_WINXP
    Windows 2000 SP4                        NTDDI_VERSION >= NTDDI_WIN2KSP4
    Windows 2000 SP3                        NTDDI_VERSION >= NTDDI_WIN2KSP3
    Windows 2000 SP2                        NTDDI_VERSION >= NTDDI_WIN2KSP2
    Windows 2000 SP1                        NTDDI_VERSION >= NTDDI_WIN2KSP1
    Windows 2000                                NTDDI_VERSION >= NTDDI_WIN2K

    The following table describes the legacy macros in use by the Windows header files.

    Minimum system required                 Macros to define
    Windows Server 2008                      _WIN32_WINNT>=0x0600
                                                             WINVER>=0x0600
     
    Windows Vista                            _WIN32_WINNT>=0x0600
                                                         WINVER>=0x0600
     
    Windows Server 2003                      _WIN32_WINNT>=0x0502
                                                              WINVER>=0x0502
     
    Windows XP                               _WIN32_WINNT>=0x0501
                                                           WINVER>=0x0501
     
    Windows 2000                             _WIN32_WINNT>=0x0500
                                                          WINVER>=0x0500
     
    Windows NT 4.0                           _WIN32_WINNT>=0x0400
                                                           WINVER>=0x0400
     
    Windows Me                               _WIN32_WINDOWS=0x0500
                                                           WINVER>=0x0500
     
    Windows 98                               _WIN32_WINDOWS>=0x0410
                                                       WINVER>=0x0410
     
    Windows 95                               _WIN32_WINDOWS>=0x0400
                                                        WINVER>=0x0400
     
    Internet Explorer 7.0                        _WIN32_IE>=0x0700
    Internet Explorer 6.0 SP2                 _WIN32_IE>=0x0603
    Internet Explorer 6.0 SP1                 _WIN32_IE>=0x0601
    Internet Explorer 6.0                        _WIN32_IE>=0x0600
    Internet Explorer 5.5                         _WIN32_IE>=0x0550
    Internet Explorer 5.01                        _WIN32_IE>=0x0501
    Internet Explorer 5.0, 5.0a, 5.0b          _WIN32_IE>=0x0500
    Internet Explorer 4.01                       _WIN32_IE>=0x0401
    Internet Explorer 4.0                          _WIN32_IE>=0x0400
    Internet Explorer 3.0, 3.01, 3.02        _WIN32_IE>=0x0300

  • 相关阅读:
    【校招面试 之 C/C++】第23题 C++ STL(五)之Set
    Cannot create an instance of OLE DB provider “OraOLEDB.Oracle” for linked server "xxxxxxx".
    Redhat Linux安装JDK 1.7
    ORA-10635: Invalid segment or tablespace type
    Symantec Backup Exec 2012 Agent for Linux 卸载
    Symantec Backup Exec 2012 Agent For Linux安装
    You must use the Role Management Tool to install or configure Microsoft .NET Framework 3.5 SP1
    YourSQLDba介绍
    PL/SQL重新编译包无反应
    MS SQL 监控数据/日志文件增长
  • 原文地址:https://www.cnblogs.com/xiayong123/p/3717498.html
Copyright © 2011-2022 走看看