1 /** 2 * Windows API header module 3 * 4 * Translated from Windows SDK API 5 * 6 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 7 * Source: $(DRUNTIMESRC core/sys/windows/sdkddkver.d) 8 */ 9 module nulib.system.win32.sdkddkver; 10 11 12 import nulib.system.win32.w32api; 13 14 enum _WIN32_WINNT_NT4 = 0x0400; 15 enum _WIN32_WINNT_WIN2K = 0x0500; 16 enum _WIN32_WINNT_WINXP = 0x0501; 17 enum _WIN32_WINNT_WS03 = 0x0502; 18 enum _WIN32_WINNT_WIN6 = 0x0600; 19 enum _WIN32_WINNT_VISTA = 0x0600; 20 enum _WIN32_WINNT_WS08 = 0x0600; 21 enum _WIN32_WINNT_LONGHORN = 0x0600; 22 enum _WIN32_WINNT_WIN7 = 0x0601; 23 enum _WIN32_WINNT_WIN8 = 0x0602; 24 enum _WIN32_WINNT_WINBLUE = 0x0603; 25 enum _WIN32_WINNT_WINTHRESHOLD = 0x0A00; 26 enum _WIN32_WINNT_WIN10 = 0x0A00; 27 28 enum _WIN32_IE_IE20 = 0x0200; 29 enum _WIN32_IE_IE30 = 0x0300; 30 enum _WIN32_IE_IE302 = 0x0302; 31 enum _WIN32_IE_IE40 = 0x0400; 32 enum _WIN32_IE_IE401 = 0x0401; 33 enum _WIN32_IE_IE50 = 0x0500; 34 enum _WIN32_IE_IE501 = 0x0501; 35 enum _WIN32_IE_IE55 = 0x0550; 36 enum _WIN32_IE_IE60 = 0x0600; 37 enum _WIN32_IE_IE60SP1 = 0x0601; 38 enum _WIN32_IE_IE60SP2 = 0x0603; 39 enum _WIN32_IE_IE70 = 0x0700; 40 enum _WIN32_IE_IE80 = 0x0800; 41 enum _WIN32_IE_IE90 = 0x0900; 42 enum _WIN32_IE_IE100 = 0x0A00; 43 enum _WIN32_IE_IE110 = 0x0A00; 44 45 enum _WIN32_IE_NT4 = _WIN32_IE_IE20; 46 enum _WIN32_IE_NT4SP1 = _WIN32_IE_IE20; 47 enum _WIN32_IE_NT4SP2 = _WIN32_IE_IE20; 48 enum _WIN32_IE_NT4SP3 = _WIN32_IE_IE302; 49 enum _WIN32_IE_NT4SP4 = _WIN32_IE_IE401; 50 enum _WIN32_IE_NT4SP5 = _WIN32_IE_IE401; 51 enum _WIN32_IE_NT4SP6 = _WIN32_IE_IE50; 52 enum _WIN32_IE_WIN98 = _WIN32_IE_IE401; 53 enum _WIN32_IE_WIN98SE = _WIN32_IE_IE50; 54 enum _WIN32_IE_WINME = _WIN32_IE_IE55; 55 enum _WIN32_IE_WIN2K = _WIN32_IE_IE501; 56 enum _WIN32_IE_WIN2KSP1 = _WIN32_IE_IE501; 57 enum _WIN32_IE_WIN2KSP2 = _WIN32_IE_IE501; 58 enum _WIN32_IE_WIN2KSP3 = _WIN32_IE_IE501; 59 enum _WIN32_IE_WIN2KSP4 = _WIN32_IE_IE501; 60 enum _WIN32_IE_XP = _WIN32_IE_IE60; 61 enum _WIN32_IE_XPSP1 = _WIN32_IE_IE60SP1; 62 enum _WIN32_IE_XPSP2 = _WIN32_IE_IE60SP2; 63 enum _WIN32_IE_WS03 = 0x0602; 64 enum _WIN32_IE_WS03SP1 = _WIN32_IE_IE60SP2; 65 enum _WIN32_IE_WIN6 = _WIN32_IE_IE70; 66 enum _WIN32_IE_LONGHORN = _WIN32_IE_IE70; 67 enum _WIN32_IE_WIN7 = _WIN32_IE_IE80; 68 enum _WIN32_IE_WIN8 = _WIN32_IE_IE100; 69 enum _WIN32_IE_WINBLUE = _WIN32_IE_IE100; 70 enum _WIN32_IE_WINTHRESHOLD = _WIN32_IE_IE110; 71 enum _WIN32_IE_WIN10 = _WIN32_IE_IE110; 72 73 74 enum NTDDI_WIN2K = 0x05000000; 75 enum NTDDI_WIN2KSP1 = 0x05000100; 76 enum NTDDI_WIN2KSP2 = 0x05000200; 77 enum NTDDI_WIN2KSP3 = 0x05000300; 78 enum NTDDI_WIN2KSP4 = 0x05000400; 79 80 enum NTDDI_WINXP = 0x05010000; 81 enum NTDDI_WINXPSP1 = 0x05010100; 82 enum NTDDI_WINXPSP2 = 0x05010200; 83 enum NTDDI_WINXPSP3 = 0x05010300; 84 enum NTDDI_WINXPSP4 = 0x05010400; 85 86 enum NTDDI_WS03 = 0x05020000; 87 enum NTDDI_WS03SP1 = 0x05020100; 88 enum NTDDI_WS03SP2 = 0x05020200; 89 enum NTDDI_WS03SP3 = 0x05020300; 90 enum NTDDI_WS03SP4 = 0x05020400; 91 92 enum NTDDI_WIN6 = 0x06000000; 93 enum NTDDI_WIN6SP1 = 0x06000100; 94 enum NTDDI_WIN6SP2 = 0x06000200; 95 enum NTDDI_WIN6SP3 = 0x06000300; 96 enum NTDDI_WIN6SP4 = 0x06000400; 97 98 enum NTDDI_VISTA = NTDDI_WIN6; 99 enum NTDDI_VISTASP1 = NTDDI_WIN6SP1; 100 enum NTDDI_VISTASP2 = NTDDI_WIN6SP2; 101 enum NTDDI_VISTASP3 = NTDDI_WIN6SP3; 102 enum NTDDI_VISTASP4 = NTDDI_WIN6SP4; 103 104 enum NTDDI_LONGHORN = NTDDI_VISTA; 105 106 enum NTDDI_WS08 = NTDDI_WIN6SP1; 107 enum NTDDI_WS08SP2 = NTDDI_WIN6SP2; 108 enum NTDDI_WS08SP3 = NTDDI_WIN6SP3; 109 enum NTDDI_WS08SP4 = NTDDI_WIN6SP4; 110 111 enum NTDDI_WIN7 = 0x06010000; 112 enum NTDDI_WIN8 = 0x06020000; 113 enum NTDDI_WINBLUE = 0x06030000; 114 enum NTDDI_WINTHRESHOLD = 0x0A000000; 115 enum NTDDI_WIN10 = 0x0A000000; 116 enum NTDDI_WIN10_TH2 = 0x0A000001; 117 enum NTDDI_WIN10_RS1 = 0x0A000002; 118 enum NTDDI_WIN10_RS2 = 0x0A000003; 119 enum NTDDI_WIN10_RS3 = 0x0A000004; 120 enum NTDDI_WIN10_RS4 = 0x0A000005; 121 enum NTDDI_WIN10_RS5 = 0x0A000006; 122 enum NTDDI_WIN10_19H1 = 0x0A000007; 123 enum NTDDI_WIN10_VB = 0x0A000008; 124 enum NTDDI_WIN10_MN = 0x0A000009; 125 enum NTDDI_WIN10_FE = 0x0A00000A; 126 enum NTDDI_WIN10_CO = 0x0A00000B; 127 enum NTDDI_WIN10_NI = 0x0A00000C; 128 enum NTDDI_WIN10_CU = 0x0A00000D; 129 enum NTDDI_WIN11_ZN = 0x0A00000E; 130 enum NTDDI_WIN11_GA = 0x0A00000F; 131 enum NTDDI_WIN11_GE = 0x0A000010; 132 133 enum WDK_NTDDI_VERSION = NTDDI_WIN11_GE; 134 135 enum OSVERSION_MASK = 0xFFFF0000U; 136 enum SPVERSION_MASK = 0x0000FF00; 137 enum SUBVERSION_MASK = 0x000000FF; 138 139 pragma(inline, true) @nogc nothrow pure @safe { 140 uint OSVER(uint Version) => Version & OSVERSION_MASK; 141 uint SPVER(uint Version) => (Version & SPVERSION_MASK) >> 8; 142 uint SUBVER(uint Version) => Version & SUBVERSION_MASK; 143 144 uint NTDDI_VERSION_FROM_WIN32_WINNT2(uint Version) => Version * 0x10000; 145 alias NTDDI_VERSION_FROM_WIN32_WINNT = NTDDI_VERSION_FROM_WIN32_WINNT2; 146 } 147 148 149 static if (_WIN32_WINNT < _WIN32_WINNT_WIN10) { 150 enum NTDDI_VERSION = NTDDI_VERSION_FROM_WIN32_WINNT(_WIN32_WINNT); 151 } else { 152 enum NTDDI_VERSION = WDK_NTDDI_VERSION; 153 } 154 155 enum WINVER = _WIN32_WINNT;