1 module windows.sdkddkver; 2 nothrow: 3 /* 4 5 Copyright (c) Microsoft Corporation. All rights reserved. 6 7 Module Name: 8 9 sdkddkver.h 10 11 Abstract: 12 13 Master include file for versioning windows SDK/DDK. 14 15 */ 16 17 // 18 // _WIN32_WINNT version enumants 19 // 20 enum _WIN32_WINNT_NT4 = 0x0400; 21 enum _WIN32_WINNT_WIN2K = 0x0500; 22 enum _WIN32_WINNT_WINXP = 0x0501; 23 enum _WIN32_WINNT_WS03 = 0x0502; 24 enum _WIN32_WINNT_WIN6 = 0x0600; 25 enum _WIN32_WINNT_VISTA = 0x0600; 26 enum _WIN32_WINNT_WS08 = 0x0600; 27 enum _WIN32_WINNT_LONGHORN = 0x0600; 28 enum _WIN32_WINNT_WIN7 = 0x0601; 29 enum _WIN32_WINNT_WIN8 = 0x0602; 30 enum _WIN32_WINNT_WINBLUE = 0x0603; 31 enum _WIN32_WINNT_WIN10 = 0x0A00; 32 33 // 34 // _WIN32_IE_ version enumants 35 // 36 enum _WIN32_IE_IE20 = 0x0200; 37 enum _WIN32_IE_IE30 = 0x0300; 38 enum _WIN32_IE_IE302 = 0x0302; 39 enum _WIN32_IE_IE40 = 0x0400; 40 enum _WIN32_IE_IE401 = 0x0401; 41 enum _WIN32_IE_IE50 = 0x0500; 42 enum _WIN32_IE_IE501 = 0x0501; 43 enum _WIN32_IE_IE55 = 0x0550; 44 enum _WIN32_IE_IE60 = 0x0600; 45 enum _WIN32_IE_IE60SP1 = 0x0601; 46 enum _WIN32_IE_IE60SP2 = 0x0603; 47 enum _WIN32_IE_IE70 = 0x0700; 48 enum _WIN32_IE_IE80 = 0x0800; 49 enum _WIN32_IE_IE90 = 0x0900; 50 enum _WIN32_IE_IE100 = 0x0A00; 51 52 // 53 // IE <-> OS version mapping 54 // 55 // NT4 supports IE versions 2.0 -> 6.0 SP1 56 enum _WIN32_IE_NT4 = _WIN32_IE_IE20; 57 enum _WIN32_IE_NT4SP1 = _WIN32_IE_IE20; 58 enum _WIN32_IE_NT4SP2 = _WIN32_IE_IE20; 59 enum _WIN32_IE_NT4SP3 = _WIN32_IE_IE302; 60 enum _WIN32_IE_NT4SP4 = _WIN32_IE_IE401; 61 enum _WIN32_IE_NT4SP5 = _WIN32_IE_IE401; 62 enum _WIN32_IE_NT4SP6 = _WIN32_IE_IE50; 63 // Win98 supports IE versions 4.01 -> 6.0 SP1 64 enum _WIN32_IE_WIN98 = _WIN32_IE_IE401; 65 // Win98SE supports IE versions 5.0 -> 6.0 SP1 66 enum _WIN32_IE_WIN98SE = _WIN32_IE_IE50; 67 // WinME supports IE versions 5.5 -> 6.0 SP1 68 enum _WIN32_IE_WINME = _WIN32_IE_IE55; 69 // Win2k supports IE versions 5.01 -> 6.0 SP1 70 enum _WIN32_IE_WIN2K = _WIN32_IE_IE501; 71 enum _WIN32_IE_WIN2KSP1 = _WIN32_IE_IE501; 72 enum _WIN32_IE_WIN2KSP2 = _WIN32_IE_IE501; 73 enum _WIN32_IE_WIN2KSP3 = _WIN32_IE_IE501; 74 enum _WIN32_IE_WIN2KSP4 = _WIN32_IE_IE501; 75 enum _WIN32_IE_XP = _WIN32_IE_IE60; 76 enum _WIN32_IE_XPSP1 = _WIN32_IE_IE60SP1; 77 enum _WIN32_IE_XPSP2 = _WIN32_IE_IE60SP2; 78 enum _WIN32_IE_WS03 = 0x0602; 79 enum _WIN32_IE_WS03SP1 = _WIN32_IE_IE60SP2; 80 enum _WIN32_IE_WIN6 = _WIN32_IE_IE70; 81 enum _WIN32_IE_LONGHORN = _WIN32_IE_IE70; 82 enum _WIN32_IE_WIN7 = _WIN32_IE_IE80; 83 enum _WIN32_IE_WIN8 = _WIN32_IE_IE100; 84 enum _WIN32_IE_WINBLUE = _WIN32_IE_IE100; 85 86 87 // 88 // NTDDI version enumants 89 // 90 enum NTDDI_WIN2K = 0x05000000; 91 enum NTDDI_WIN2KSP1 = 0x05000100; 92 enum NTDDI_WIN2KSP2 = 0x05000200; 93 enum NTDDI_WIN2KSP3 = 0x05000300; 94 enum NTDDI_WIN2KSP4 = 0x05000400; 95 96 enum NTDDI_WINXP = 0x05010000; 97 enum NTDDI_WINXPSP1 = 0x05010100; 98 enum NTDDI_WINXPSP2 = 0x05010200; 99 enum NTDDI_WINXPSP3 = 0x05010300; 100 enum NTDDI_WINXPSP4 = 0x05010400; 101 102 enum NTDDI_WS03 = 0x05020000; 103 enum NTDDI_WS03SP1 = 0x05020100; 104 enum NTDDI_WS03SP2 = 0x05020200; 105 enum NTDDI_WS03SP3 = 0x05020300; 106 enum NTDDI_WS03SP4 = 0x05020400; 107 108 enum NTDDI_WIN6 = 0x06000000; 109 enum NTDDI_WIN6SP1 = 0x06000100; 110 enum NTDDI_WIN6SP2 = 0x06000200; 111 enum NTDDI_WIN6SP3 = 0x06000300; 112 enum NTDDI_WIN6SP4 = 0x06000400; 113 114 enum NTDDI_VISTA = NTDDI_WIN6; 115 enum NTDDI_VISTASP1 = NTDDI_WIN6SP1; 116 enum NTDDI_VISTASP2 = NTDDI_WIN6SP2; 117 enum NTDDI_VISTASP3 = NTDDI_WIN6SP3; 118 enum NTDDI_VISTASP4 = NTDDI_WIN6SP4; 119 120 enum NTDDI_LONGHORN= NTDDI_VISTA; 121 122 enum NTDDI_WS08 = NTDDI_WIN6SP1; 123 enum NTDDI_WS08SP2 = NTDDI_WIN6SP2; 124 enum NTDDI_WS08SP3 = NTDDI_WIN6SP3; 125 enum NTDDI_WS08SP4 = NTDDI_WIN6SP4; 126 127 enum NTDDI_WIN7 = 0x06010000; 128 enum NTDDI_WIN8 = 0x06020000; 129 enum NTDDI_WINBLUE = 0x06030000; 130 131 132 // 133 // masks for version macros 134 // 135 enum OSVERSION_MASK = 0xFFFF0000; 136 enum SPVERSION_MASK = 0x0000FF00; 137 enum SUBVERSION_MASK = 0x000000FF; 138 139 enum _WIN32_WINNT = 0x0603; 140 141 enum NTDDI_VERSION = 0x06030000; 142 enum WINVER = _WIN32_WINNT; 143 144 // set _WIN32_IE based on _WIN32_WINNT 145 static if (_WIN32_WINNT <= _WIN32_WINNT_NT4) 146 enum _WIN32_IE = _WIN32_IE_IE50; 147 else static if (_WIN32_WINNT <= _WIN32_WINNT_WIN2K) 148 enum _WIN32_IE = _WIN32_IE_IE501; 149 else static if (_WIN32_WINNT <= _WIN32_WINNT_WINXP) 150 enum _WIN32_IE = _WIN32_IE_IE60; 151 else static if (_WIN32_WINNT <= _WIN32_WINNT_WS03) 152 enum _WIN32_IE = _WIN32_IE_WS03; 153 else static if (_WIN32_WINNT <= _WIN32_WINNT_VISTA) 154 enum _WIN32_IE = _WIN32_IE_LONGHORN; 155 else static if (_WIN32_WINNT <= _WIN32_WINNT_WIN7) 156 enum _WIN32_IE = _WIN32_IE_WIN7; 157 else static if (_WIN32_WINNT <= _WIN32_WINNT_WIN8) 158 enum _WIN32_IE = _WIN32_IE_WIN8; 159 else 160 enum _WIN32_IE = 0x0A00; 161