LIEF: Library to Instrument Executable Formats Version 0.15.0
Loading...
Searching...
No Matches
PE/undef.h
1/* Copyright 2017 - 2024 R. Thomas
2 * Copyright 2017 - 2024 Quarkslab
3 * Copyright 2017 - 2021 K. Nakagawa
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17#if !defined(LIEF_PE_UNDEF_H) || defined(LIEF_PE_FORCE_UNDEF)
18#define LIEF_PE_UNDEF_H
19
20#ifdef IMAGE_FILE_MACHINE_UNKNOWN
21#pragma message("LIEF will disable #define enums. Please use LIEF_PE_XXXX or LIEF::PE::XXXX instead!")
22#endif
23
24#undef IMAGE_FILE_MACHINE_UNKNOWN
25#undef IMAGE_FILE_MACHINE_AM33
26#undef IMAGE_FILE_MACHINE_AMD64
27#undef IMAGE_FILE_MACHINE_ARM
28#undef IMAGE_FILE_MACHINE_ARMNT
29#undef IMAGE_FILE_MACHINE_ARM64
30#undef IMAGE_FILE_MACHINE_EBC
31#undef IMAGE_FILE_MACHINE_I386
32#undef IMAGE_FILE_MACHINE_IA64
33#undef IMAGE_FILE_MACHINE_M32R
34#undef IMAGE_FILE_MACHINE_MIPS16
35#undef IMAGE_FILE_MACHINE_MIPSFPU
36#undef IMAGE_FILE_MACHINE_MIPSFPU16
37#undef IMAGE_FILE_MACHINE_POWERPC
38#undef IMAGE_FILE_MACHINE_POWERPCFP
39#undef IMAGE_FILE_MACHINE_R4000
40#undef IMAGE_FILE_MACHINE_RISCV32
41#undef IMAGE_FILE_MACHINE_RISCV64
42#undef IMAGE_FILE_MACHINE_RISCV128
43#undef IMAGE_FILE_MACHINE_SH3
44#undef IMAGE_FILE_MACHINE_SH3DSP
45#undef IMAGE_FILE_MACHINE_SH4
46#undef IMAGE_FILE_MACHINE_SH5
47#undef IMAGE_FILE_MACHINE_THUMB
48#undef IMAGE_FILE_MACHINE_WCEMIPSV2
49
50#undef IMAGE_SYM_DEBUG
51#undef IMAGE_SYM_ABSOLUTE
52#undef IMAGE_SYM_UNDEFINED
53
54
55#undef IMAGE_FILE_INVALID
56#undef IMAGE_FILE_RELOCS_STRIPPED
57#undef IMAGE_FILE_EXECUTABLE_IMAGE
58#undef IMAGE_FILE_LINE_NUMS_STRIPPED
59#undef IMAGE_FILE_LOCAL_SYMS_STRIPPED
60#undef IMAGE_FILE_AGGRESSIVE_WS_TRIM
61#undef IMAGE_FILE_LARGE_ADDRESS_AWARE
62#undef IMAGE_FILE_BYTES_REVERSED_LO
63#undef IMAGE_FILE_32BIT_MACHINE
64#undef IMAGE_FILE_DEBUG_STRIPPED
65#undef IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
66#undef IMAGE_FILE_NET_RUN_FROM_SWAP
67#undef IMAGE_FILE_SYSTEM
68#undef IMAGE_FILE_DLL
69#undef IMAGE_FILE_UP_SYSTEM_ONLY
70#undef IMAGE_FILE_BYTES_REVERSED_HI
71
72#undef IMAGE_SYM_CLASS_END_OF_FUNCTION
73#undef IMAGE_SYM_CLASS_NULL
74#undef IMAGE_SYM_CLASS_AUTOMATIC
75#undef IMAGE_SYM_CLASS_EXTERNAL
76#undef IMAGE_SYM_CLASS_STATIC
77#undef IMAGE_SYM_CLASS_REGISTER
78#undef IMAGE_SYM_CLASS_EXTERNAL_DEF
79#undef IMAGE_SYM_CLASS_LABEL
80#undef IMAGE_SYM_CLASS_UNDEFINED_LABEL
81#undef IMAGE_SYM_CLASS_MEMBER_OF_STRUCT
82#undef IMAGE_SYM_CLASS_ARGUMENT
83#undef IMAGE_SYM_CLASS_STRUCT_TAG
84#undef IMAGE_SYM_CLASS_MEMBER_OF_UNION
85#undef IMAGE_SYM_CLASS_UNION_TAG
86#undef IMAGE_SYM_CLASS_TYPE_DEFINITION
87#undef IMAGE_SYM_CLASS_UNDEFINED_STATIC
88#undef IMAGE_SYM_CLASS_ENUM_TAG
89#undef IMAGE_SYM_CLASS_MEMBER_OF_ENUM
90#undef IMAGE_SYM_CLASS_REGISTER_PARAM
91#undef IMAGE_SYM_CLASS_BIT_FIELD
92#undef IMAGE_SYM_CLASS_BLOCK
93#undef IMAGE_SYM_CLASS_FUNCTION
94#undef IMAGE_SYM_CLASS_END_OF_STRUCT
95#undef IMAGE_SYM_CLASS_FILE
96#undef IMAGE_SYM_CLASS_SECTION
97#undef IMAGE_SYM_CLASS_WEAK_EXTERNAL
98#undef IMAGE_SYM_CLASS_CLR_TOKEN
99
100#undef IMAGE_SYM_TYPE_NULL
101#undef IMAGE_SYM_TYPE_VOID
102#undef IMAGE_SYM_TYPE_CHAR
103#undef IMAGE_SYM_TYPE_SHORT
104#undef IMAGE_SYM_TYPE_INT
105#undef IMAGE_SYM_TYPE_LONG
106#undef IMAGE_SYM_TYPE_FLOAT
107#undef IMAGE_SYM_TYPE_DOUBLE
108#undef IMAGE_SYM_TYPE_STRUCT
109#undef IMAGE_SYM_TYPE_UNION
110#undef IMAGE_SYM_TYPE_ENUM
111#undef IMAGE_SYM_TYPE_MOE
112#undef IMAGE_SYM_TYPE_BYTE
113#undef IMAGE_SYM_TYPE_WORD
114#undef IMAGE_SYM_TYPE_UINT
115#undef IMAGE_SYM_TYPE_DWORD
116
117
118
119#undef IMAGE_SYM_DTYPE_NULL
120#undef IMAGE_SYM_DTYPE_POINTER
121#undef IMAGE_SYM_DTYPE_FUNCTION
122#undef IMAGE_SYM_DTYPE_ARRAY
123#undef SCT_COMPLEX_TYPE_SHIFT
124
125#undef IMAGE_REL_BASED_ABSOLUTE
126#undef IMAGE_REL_BASED_HIGH
127#undef IMAGE_REL_BASED_LOW
128#undef IMAGE_REL_BASED_HIGHLOW
129#undef IMAGE_REL_BASED_HIGHADJ
130#undef IMAGE_REL_BASED_MIPS_JMPADDR
131#undef IMAGE_REL_BASED_SECTION
132#undef IMAGE_REL_BASED_REL
133#undef IMAGE_REL_BASED_MIPS_JMPADDR16
134#undef IMAGE_REL_BASED_IA64_IMM64
135#undef IMAGE_REL_BASED_DIR64
136#undef IMAGE_REL_BASED_HIGH3ADJ
137
138#undef IMAGE_REL_I386_ABSOLUTE
139#undef IMAGE_REL_I386_DIR16
140#undef IMAGE_REL_I386_REL16
141#undef IMAGE_REL_I386_DIR32
142#undef IMAGE_REL_I386_DIR32NB
143#undef IMAGE_REL_I386_SEG12
144#undef IMAGE_REL_I386_SECTION
145#undef IMAGE_REL_I386_SECREL
146#undef IMAGE_REL_I386_TOKEN
147#undef IMAGE_REL_I386_SECREL7
148#undef IMAGE_REL_I386_REL32
149#undef IMAGE_REL_BASED_ARM_MOV32A
150#undef IMAGE_REL_BASED_ARM_MOV32
151#undef IMAGE_REL_BASED_RISCV_HI20
152#undef IMAGE_REL_BASED_ARM_MOV32T
153#undef IMAGE_REL_BASED_THUMB_MOV32
154#undef IMAGE_REL_BASED_RISCV_LOW12I
155#undef IMAGE_REL_BASED_RISCV_LOW12S
156
157#undef IMAGE_REL_AMD64_ABSOLUTE
158#undef IMAGE_REL_AMD64_ADDR64
159#undef IMAGE_REL_AMD64_ADDR32
160#undef IMAGE_REL_AMD64_ADDR32NB
161#undef IMAGE_REL_AMD64_REL32
162#undef IMAGE_REL_AMD64_REL32_1
163#undef IMAGE_REL_AMD64_REL32_2
164#undef IMAGE_REL_AMD64_REL32_3
165#undef IMAGE_REL_AMD64_REL32_4
166#undef IMAGE_REL_AMD64_REL32_5
167#undef IMAGE_REL_AMD64_SECTION
168#undef IMAGE_REL_AMD64_SECREL
169#undef IMAGE_REL_AMD64_SECREL7
170#undef IMAGE_REL_AMD64_TOKEN
171#undef IMAGE_REL_AMD64_SREL32
172#undef IMAGE_REL_AMD64_PAIR
173#undef IMAGE_REL_AMD64_SSPAN32
174
175#undef IMAGE_REL_ARM_ABSOLUTE
176#undef IMAGE_REL_ARM_ADDR32
177#undef IMAGE_REL_ARM_ADDR32NB
178#undef IMAGE_REL_ARM_BRANCH24
179#undef IMAGE_REL_ARM_BRANCH11
180#undef IMAGE_REL_ARM_TOKEN
181#undef IMAGE_REL_ARM_BLX24
182#undef IMAGE_REL_ARM_BLX11
183#undef IMAGE_REL_ARM_SECTION
184#undef IMAGE_REL_ARM_SECREL
185#undef IMAGE_REL_ARM_MOV32A
186#undef IMAGE_REL_ARM_MOV32T
187#undef IMAGE_REL_ARM_BRANCH20T
188#undef IMAGE_REL_ARM_BRANCH24T
189#undef IMAGE_REL_ARM_BLX23T
190
191
192#undef IMAGE_WEAK_EXTERN_SEARCH_NOLIBRARY
193#undef IMAGE_WEAK_EXTERN_SEARCH_LIBRARY
194#undef IMAGE_WEAK_EXTERN_SEARCH_ALIAS
195
196
197#undef EXPORT_TABLE
198#undef IMPORT_TABLE
199#undef RESOURCE_TABLE
200#undef EXCEPTION_TABLE
201#undef CERTIFICATE_TABLE
202#undef BASE_RELOCATION_TABLE
203#undef DEBUG
204#undef ARCHITECTURE
205#undef GLOBAL_PTR
206#undef TLS_TABLE
207#undef LOAD_CONFIG_TABLE
208#undef BOUND_IMPORT
209#undef IAT
210#undef DELAY_IMPORT_DESCRIPTOR
211#undef CLR_RUNTIME_HEADER
212#undef NUM_DATA_DIRECTORIES
213
214#undef IMAGE_SUBSYSTEM_UNKNOWN
215#undef IMAGE_SUBSYSTEM_NATIVE
216#undef IMAGE_SUBSYSTEM_WINDOWS_GUI
217#undef IMAGE_SUBSYSTEM_WINDOWS_CUI
218#undef IMAGE_SUBSYSTEM_OS2_CUI
219#undef IMAGE_SUBSYSTEM_POSIX_CUI
220#undef IMAGE_SUBSYSTEM_NATIVE_WINDOWS
221#undef IMAGE_SUBSYSTEM_WINDOWS_CE_GUI
222#undef IMAGE_SUBSYSTEM_EFI_APPLICATION
223#undef IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER
224#undef IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER
225#undef IMAGE_SUBSYSTEM_EFI_ROM
226#undef IMAGE_SUBSYSTEM_XBOX
227#undef IMAGE_SUBSYSTEM_WINDOWS_BOOT_APPLICATION
228
229
230
231#undef IMAGE_DLL_CHARACTERISTICS_HIGH_ENTROPY_VA
232#undef IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE
233#undef IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY
234#undef IMAGE_DLL_CHARACTERISTICS_NX_COMPAT
235#undef IMAGE_DLL_CHARACTERISTICS_NO_ISOLATION
236#undef IMAGE_DLL_CHARACTERISTICS_NO_SEH
237#undef IMAGE_DLL_CHARACTERISTICS_NO_BIND
238#undef IMAGE_DLL_CHARACTERISTICS_APPCONTAINER
239#undef IMAGE_DLL_CHARACTERISTICS_WDM_DRIVER
240#undef IMAGE_DLL_CHARACTERISTICS_GUARD_CF
241#undef IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE
242
243#undef IMAGE_DEBUG_TYPE_UNKNOWN
244#undef IMAGE_DEBUG_TYPE_COFF
245#undef IMAGE_DEBUG_TYPE_CODEVIEW
246#undef IMAGE_DEBUG_TYPE_FPO
247#undef IMAGE_DEBUG_TYPE_MISC
248#undef IMAGE_DEBUG_TYPE_EXCEPTION
249#undef IMAGE_DEBUG_TYPE_FIXUP
250#undef IMAGE_DEBUG_TYPE_OMAP_TO_SRC
251#undef IMAGE_DEBUG_TYPE_OMAP_FROM_SRC
252#undef IMAGE_DEBUG_TYPE_BORLAND
253#undef IMAGE_DEBUG_TYPE_RESERVED10
254#undef IMAGE_DEBUG_TYPE_CLSID
255#undef IMAGE_DEBUG_TYPE_VC_FEATURE
256#undef IMAGE_DEBUG_TYPE_POGO
257#undef IMAGE_DEBUG_TYPE_ILTCG
258#undef IMAGE_DEBUG_TYPE_MPX
259#undef IMAGE_DEBUG_TYPE_REPRO
260#undef IMAGE_DEBUG_TYPE_EX_DLLCHARACTERISTICS
261
262#undef IMAGE_SCN_TYPE_NO_PAD
263#undef IMAGE_SCN_CNT_CODE
264#undef IMAGE_SCN_CNT_INITIALIZED_DATA
265#undef IMAGE_SCN_CNT_UNINITIALIZED_DATA
266#undef IMAGE_SCN_LNK_OTHER
267#undef IMAGE_SCN_LNK_INFO
268#undef IMAGE_SCN_LNK_REMOVE
269#undef IMAGE_SCN_LNK_COMDAT
270#undef IMAGE_SCN_GPREL
271#undef IMAGE_SCN_MEM_PURGEABLE
272#undef IMAGE_SCN_MEM_16BIT
273#undef IMAGE_SCN_MEM_LOCKED
274#undef IMAGE_SCN_MEM_PRELOAD
275#undef IMAGE_SCN_ALIGN_1BYTES
276#undef IMAGE_SCN_ALIGN_2BYTES
277#undef IMAGE_SCN_ALIGN_4BYTES
278#undef IMAGE_SCN_ALIGN_8BYTES
279#undef IMAGE_SCN_ALIGN_16BYTES
280#undef IMAGE_SCN_ALIGN_32BYTES
281#undef IMAGE_SCN_ALIGN_64BYTES
282#undef IMAGE_SCN_ALIGN_128BYTES
283#undef IMAGE_SCN_ALIGN_256BYTES
284#undef IMAGE_SCN_ALIGN_512BYTES
285#undef IMAGE_SCN_ALIGN_1024BYTES
286#undef IMAGE_SCN_ALIGN_2048BYTES
287#undef IMAGE_SCN_ALIGN_4096BYTES
288#undef IMAGE_SCN_ALIGN_8192BYTES
289#undef IMAGE_SCN_LNK_NRELOC_OVFL
290#undef IMAGE_SCN_MEM_DISCARDABLE
291#undef IMAGE_SCN_MEM_NOT_CACHED
292#undef IMAGE_SCN_MEM_NOT_PAGED
293#undef IMAGE_SCN_MEM_SHARED
294#undef IMAGE_SCN_MEM_EXECUTE
295#undef IMAGE_SCN_MEM_READ
296#undef IMAGE_SCN_MEM_WRITE
297
298#undef RESOURCE_LANGS
299
300
301#undef LANG_NEUTRAL
302#undef LANG_INVARIANT
303#undef LANG_AFRIKAANS
304#undef LANG_ALBANIAN
305#undef LANG_ARABIC
306#undef LANG_ARMENIAN
307#undef LANG_ASSAMESE
308#undef LANG_AZERI
309#undef LANG_BASQUE
310#undef LANG_BELARUSIAN
311#undef LANG_BENGALI
312#undef LANG_BANGLA
313#undef LANG_BULGARIAN
314#undef LANG_CATALAN
315#undef LANG_CHINESE
316#undef LANG_CROATIAN
317#undef LANG_BOSNIAN
318#undef LANG_CZECH
319#undef LANG_DANISH
320#undef LANG_DIVEHI
321#undef LANG_DUTCH
322#undef LANG_ENGLISH
323#undef LANG_ESTONIAN
324#undef LANG_FAEROESE
325#undef LANG_FARSI
326#undef LANG_FINNISH
327#undef LANG_FRENCH
328#undef LANG_GALICIAN
329#undef LANG_GEORGIAN
330#undef LANG_GERMAN
331#undef LANG_GREEK
332#undef LANG_GUJARATI
333#undef LANG_HEBREW
334#undef LANG_HINDI
335#undef LANG_HUNGARIAN
336#undef LANG_ICELANDIC
337#undef LANG_INDONESIAN
338#undef LANG_ITALIAN
339#undef LANG_JAPANESE
340#undef LANG_KANNADA
341#undef LANG_KASHMIRI
342#undef LANG_KAZAK
343#undef LANG_KONKANI
344#undef LANG_KOREAN
345#undef LANG_KYRGYZ
346#undef LANG_LATVIAN
347#undef LANG_LITHUANIAN
348#undef LANG_MACEDONIAN
349#undef LANG_MALAY
350#undef LANG_MALAYALAM
351#undef LANG_MANIPURI
352#undef LANG_MARATHI
353#undef LANG_MONGOLIAN
354#undef LANG_NEPALI
355#undef LANG_NORWEGIAN
356#undef LANG_ORIYA
357#undef LANG_POLISH
358#undef LANG_PORTUGUESE
359#undef LANG_PUNJABI
360#undef LANG_ROMANIAN
361#undef LANG_RUSSIAN
362#undef LANG_SANSKRIT
363#undef LANG_SERBIAN
364#undef LANG_SINDHI
365#undef LANG_SLOVAK
366#undef LANG_SLOVENIAN
367#undef LANG_SPANISH
368#undef LANG_SWAHILI
369#undef LANG_SWEDISH
370#undef LANG_SYRIAC
371#undef LANG_TAMIL
372#undef LANG_TATAR
373#undef LANG_TELUGU
374#undef LANG_THAI
375#undef LANG_TURKISH
376#undef LANG_UKRAINIAN
377#undef LANG_URDU
378#undef LANG_UZBEK
379#undef LANG_VIETNAMESE
380#undef LANG_GAELIC
381#undef LANG_MALTESE
382#undef LANG_MAORI
383#undef LANG_RHAETO_ROMANCE
384#undef LANG_SAMI
385#undef LANG_SORBIAN
386#undef LANG_SUTU
387#undef LANG_TSONGA
388#undef LANG_TSWANA
389#undef LANG_VENDA
390#undef LANG_XHOSA
391#undef LANG_ZULU
392#undef LANG_ESPERANTO
393#undef LANG_WALON
394#undef LANG_CORNISH
395#undef LANG_WELSH
396#undef LANG_BRETON
397#undef LANG_INUKTITUT
398#undef LANG_IRISH
399#undef LANG_LOWER_SORBIAN
400#undef LANG_PULAR
401#undef LANG_QUECHUA
402#undef LANG_TAMAZIGHT
403#undef LANG_TIGRINYA
404#undef LANG_VALENCIAN
405
406
407
408#undef SUBLANG_AFRIKAANS_SOUTH_AFRICA
409#undef SUBLANG_ALBANIAN_ALBANIA
410#undef SUBLANG_ALSATIAN_FRANCE
411#undef SUBLANG_AMHARIC_ETHIOPIA
412#undef SUBLANG_ARABIC_ALGERIA
413#undef SUBLANG_ARABIC_BAHRAIN
414#undef SUBLANG_ARABIC_EGYPT
415#undef SUBLANG_ARABIC_IRAQ
416#undef SUBLANG_ARABIC_JORDAN
417#undef SUBLANG_ARABIC_KUWAIT
418#undef SUBLANG_ARABIC_LEBANON
419#undef SUBLANG_ARABIC_LIBYA
420#undef SUBLANG_ARABIC_MOROCCO
421#undef SUBLANG_ARABIC_OMAN
422#undef SUBLANG_ARABIC_QATAR
423#undef SUBLANG_ARABIC_SAUDI_ARABIA
424#undef SUBLANG_ARABIC_SYRIA
425#undef SUBLANG_ARABIC_TUNISIA
426#undef SUBLANG_ARABIC_UAE
427#undef SUBLANG_ARABIC_YEMEN
428#undef SUBLANG_ARMENIAN_ARMENIA
429#undef SUBLANG_ASSAMESE_INDIA
430#undef SUBLANG_AZERI_CYRILLIC
431#undef SUBLANG_AZERI_LATIN
432#undef SUBLANG_BASHKIR_RUSSIA
433#undef SUBLANG_BASQUE_BASQUE
434#undef SUBLANG_BELARUSIAN_BELARUS
435#undef SUBLANG_BANGLA_BANGLADESH
436#undef SUBLANG_BANGLA_INDIA
437#undef SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC
438#undef SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN
439#undef SUBLANG_BRETON_FRANCE
440#undef SUBLANG_BULGARIAN_BULGARIA
441#undef SUBLANG_CATALAN_CATALAN
442#undef SUBLANG_CHINESE_HONGKONG
443#undef SUBLANG_CHINESE_MACAU
444#undef SUBLANG_CHINESE_SIMPLIFIED
445#undef SUBLANG_CHINESE_SINGAPORE
446#undef SUBLANG_CHINESE_TRADITIONAL
447#undef SUBLANG_CORSICAN_FRANCE
448#undef SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN
449#undef SUBLANG_CROATIAN_CROATIA
450#undef SUBLANG_CUSTOM_DEFAULT
451#undef SUBLANG_CUSTOM_UNSPECIFIED
452#undef SUBLANG_CZECH_CZECH_REPUBLIC
453#undef SUBLANG_DANISH_DENMARK
454#undef SUBLANG_DARI_AFGHANISTAN
455#undef SUBLANG_DEFAULT
456#undef SUBLANG_DIVEHI_MALDIVES
457#undef SUBLANG_DUTCH_BELGIAN
458#undef SUBLANG_DUTCH
459#undef SUBLANG_ENGLISH_AUS
460#undef SUBLANG_ENGLISH_BELIZE
461#undef SUBLANG_ENGLISH_CAN
462#undef SUBLANG_ENGLISH_CARIBBEAN
463#undef SUBLANG_ENGLISH_EIRE
464#undef SUBLANG_ENGLISH_INDIA
465#undef SUBLANG_ENGLISH_JAMAICA
466#undef SUBLANG_ENGLISH_MALAYSIA
467#undef SUBLANG_ENGLISH_NZ
468#undef SUBLANG_ENGLISH_PHILIPPINES
469#undef SUBLANG_ENGLISH_SINGAPORE
470#undef SUBLANG_ENGLISH_SOUTH_AFRICA
471#undef SUBLANG_ENGLISH_TRINIDAD
472#undef SUBLANG_ENGLISH_UK
473#undef SUBLANG_ENGLISH_US
474#undef SUBLANG_ENGLISH_ZIMBABWE
475#undef SUBLANG_ENGLISH_IRELAND
476#undef SUBLANG_ESTONIAN_ESTONIA
477#undef SUBLANG_FAEROESE_FAROE_ISLANDS
478#undef SUBLANG_FILIPINO_PHILIPPINES
479#undef SUBLANG_FINNISH_FINLAND
480#undef SUBLANG_FRENCH_BELGIAN
481#undef SUBLANG_FRENCH_CANADIAN
482#undef SUBLANG_FRENCH_LUXEMBOURG
483#undef SUBLANG_FRENCH_MONACO
484#undef SUBLANG_FRENCH_SWISS
485#undef SUBLANG_FRENCH
486#undef SUBLANG_FRISIAN_NETHERLANDS
487#undef SUBLANG_GALICIAN_GALICIAN
488#undef SUBLANG_GEORGIAN_GEORGIA
489#undef SUBLANG_GERMAN_AUSTRIAN
490#undef SUBLANG_GERMAN_LIECHTENSTEIN
491#undef SUBLANG_GERMAN_LUXEMBOURG
492#undef SUBLANG_GERMAN_SWISS
493#undef SUBLANG_GERMAN
494#undef SUBLANG_GREEK_GREECE
495#undef SUBLANG_GREENLANDIC_GREENLAND
496#undef SUBLANG_GUJARATI_INDIA
497#undef SUBLANG_HAUSA_NIGERIA_LATIN
498#undef SUBLANG_HEBREW_ISRAEL
499#undef SUBLANG_HINDI_INDIA
500#undef SUBLANG_HUNGARIAN_HUNGARY
501#undef SUBLANG_ICELANDIC_ICELAND
502#undef SUBLANG_IGBO_NIGERIA
503#undef SUBLANG_INDONESIAN_INDONESIA
504#undef SUBLANG_INUKTITUT_CANADA_LATIN
505#undef SUBLANG_INUKTITUT_CANADA
506#undef SUBLANG_IRISH_IRELAND
507#undef SUBLANG_ITALIAN_SWISS
508#undef SUBLANG_ITALIAN
509#undef SUBLANG_JAPANESE_JAPAN
510#undef SUBLANG_KANNADA_INDIA
511#undef SUBLANG_KASHMIRI_INDIA
512#undef SUBLANG_KASHMIRI_SASIA
513#undef SUBLANG_KAZAK_KAZAKHSTAN
514#undef SUBLANG_KHMER_CAMBODIA
515#undef SUBLANG_KICHE_GUATEMALA
516#undef SUBLANG_KINYARWANDA_RWANDA
517#undef SUBLANG_KONKANI_INDIA
518#undef SUBLANG_KOREAN
519#undef SUBLANG_KYRGYZ_KYRGYZSTAN
520#undef SUBLANG_LAO_LAO
521#undef SUBLANG_LATVIAN_LATVIA
522#undef SUBLANG_LITHUANIAN_CLASSIC
523#undef SUBLANG_LITHUANIAN
524#undef SUBLANG_LOWER_SORBIAN_GERMANY
525#undef SUBLANG_LUXEMBOURGISH_LUXEMBOURG
526#undef SUBLANG_MACEDONIAN_MACEDONIA
527#undef SUBLANG_MALAY_BRUNEI_DARUSSALAM
528#undef SUBLANG_MALAY_MALAYSIA
529#undef SUBLANG_MALAYALAM_INDIA
530#undef SUBLANG_MALTESE_MALTA
531#undef SUBLANG_MAORI_NEW_ZEALAND
532#undef SUBLANG_MAPUDUNGUN_CHILE
533#undef SUBLANG_MARATHI_INDIA
534#undef SUBLANG_MOHAWK_MOHAWK
535#undef SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA
536#undef SUBLANG_MONGOLIAN_PRC
537#undef SUBLANG_NEPALI_INDIA
538#undef SUBLANG_NEPALI_NEPAL
539#undef SUBLANG_NEUTRAL
540#undef SUBLANG_NORWEGIAN_BOKMAL
541#undef SUBLANG_NORWEGIAN_NYNORSK
542#undef SUBLANG_OCCITAN_FRANCE
543#undef SUBLANG_ORIYA_INDIA
544#undef SUBLANG_PASHTO_AFGHANISTAN
545#undef SUBLANG_PERSIAN_IRAN
546#undef SUBLANG_POLISH_POLAND
547#undef SUBLANG_PORTUGUESE_BRAZILIAN
548#undef SUBLANG_PORTUGUESE
549#undef SUBLANG_PUNJABI_INDIA
550#undef SUBLANG_QUECHUA_BOLIVIA
551#undef SUBLANG_QUECHUA_ECUADOR
552#undef SUBLANG_QUECHUA_PERU
553#undef SUBLANG_ROMANIAN_ROMANIA
554#undef SUBLANG_ROMANSH_SWITZERLAND
555#undef SUBLANG_RUSSIAN_RUSSIA
556#undef SUBLANG_SAMI_INARI_FINLAND
557#undef SUBLANG_SAMI_LULE_NORWAY
558#undef SUBLANG_SAMI_LULE_SWEDEN
559#undef SUBLANG_SAMI_NORTHERN_FINLAND
560#undef SUBLANG_SAMI_NORTHERN_NORWAY
561#undef SUBLANG_SAMI_NORTHERN_SWEDEN
562#undef SUBLANG_SAMI_SKOLT_FINLAND
563#undef SUBLANG_SAMI_SOUTHERN_NORWAY
564#undef SUBLANG_SAMI_SOUTHERN_SWEDEN
565#undef SUBLANG_SANSKRIT_INDIA
566#undef SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_CYRILLIC
567#undef SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_LATIN
568#undef SUBLANG_SERBIAN_CROATIA
569#undef SUBLANG_SERBIAN_CYRILLIC
570#undef SUBLANG_SERBIAN_LATIN
571#undef SUBLANG_SINDHI_AFGHANISTAN
572#undef SUBLANG_SINDHI_INDIA
573#undef SUBLANG_SINDHI_PAKISTAN
574#undef SUBLANG_SINHALESE_SRI_LANKA
575#undef SUBLANG_SLOVAK_SLOVAKIA
576#undef SUBLANG_SLOVENIAN_SLOVENIA
577#undef SUBLANG_SOTHO_NORTHERN_SOUTH_AFRICA
578#undef SUBLANG_SPANISH_ARGENTINA
579#undef SUBLANG_SPANISH_BOLIVIA
580#undef SUBLANG_SPANISH_CHILE
581#undef SUBLANG_SPANISH_COLOMBIA
582#undef SUBLANG_SPANISH_COSTA_RICA
583#undef SUBLANG_SPANISH_DOMINICAN_REPUBLIC
584#undef SUBLANG_SPANISH_ECUADOR
585#undef SUBLANG_SPANISH_EL_SALVADOR
586#undef SUBLANG_SPANISH_GUATEMALA
587#undef SUBLANG_SPANISH_HONDURAS
588#undef SUBLANG_SPANISH_MEXICAN
589#undef SUBLANG_SPANISH_MODERN
590#undef SUBLANG_SPANISH_NICARAGUA
591#undef SUBLANG_SPANISH_PANAMA
592#undef SUBLANG_SPANISH_PARAGUAY
593#undef SUBLANG_SPANISH_PERU
594#undef SUBLANG_SPANISH_PUERTO_RICO
595#undef SUBLANG_SPANISH_URUGUAY
596#undef SUBLANG_SPANISH_US
597#undef SUBLANG_SPANISH_VENEZUELA
598#undef SUBLANG_SPANISH
599#undef SUBLANG_SWAHILI_KENYA
600#undef SUBLANG_SWEDISH_FINLAND
601#undef SUBLANG_SWEDISH
602#undef SUBLANG_SYRIAC_SYRIA
603#undef SUBLANG_SYS_DEFAULT
604#undef SUBLANG_TAJIK_TAJIKISTAN
605#undef SUBLANG_TAMAZIGHT_ALGERIA_LATIN
606#undef SUBLANG_TAMIL_INDIA
607#undef SUBLANG_TATAR_RUSSIA
608#undef SUBLANG_TELUGU_INDIA
609#undef SUBLANG_THAI_THAILAND
610#undef SUBLANG_TIBETAN_PRC
611#undef SUBLANG_TIGRIGNA_ERITREA
612#undef SUBLANG_TSWANA_SOUTH_AFRICA
613#undef SUBLANG_TURKISH_TURKEY
614#undef SUBLANG_TURKMEN_TURKMENISTAN
615#undef SUBLANG_UI_CUSTOM_DEFAULT
616#undef SUBLANG_UIGHUR_PRC
617#undef SUBLANG_UKRAINIAN_UKRAINE
618#undef SUBLANG_UPPER_SORBIAN_GERMANY
619#undef SUBLANG_URDU_INDIA
620#undef SUBLANG_URDU_PAKISTAN
621#undef SUBLANG_UZBEK_CYRILLIC
622#undef SUBLANG_UZBEK_LATIN
623#undef SUBLANG_VIETNAMESE_VIETNAM
624#undef SUBLANG_WELSH_UNITED_KINGDOM
625#undef SUBLANG_WOLOF_SENEGAL
626#undef SUBLANG_XHOSA_SOUTH_AFRICA
627#undef SUBLANG_YAKUT_RUSSIA
628#undef SUBLANG_YI_PRC
629#undef SUBLANG_YORUBA_NIGERIA
630#undef SUBLANG_ZULU_SOUTH_AFRICA
631#undef SUBLANG_PULAR_SENEGAL
632#undef SUBLANG_PUNJABI_PAKISTAN
633#undef SUBLANG_TSWANA_BOTSWANA
634#undef SUBLANG_TAMIL_SRI_LANKA
635#undef SUBLANG_TIGRINYA_ETHIOPIA
636#undef SUBLANG_TIGRINYA_ERITREA
637#undef SUBLANG_VALENCIAN_VALENCIA
638
639#undef WS_EX_DLGMODALFRAME
640#undef WS_EX_NOPARENTNOTIFY
641#undef WS_EX_TOPMOST
642#undef WS_EX_ACCEPTFILES
643#undef WS_EX_TRANSPARENT
644#undef WS_EX_MDICHILD
645#undef WS_EX_TOOLWINDOW
646#undef WS_EX_WINDOWEDGE
647#undef WS_EX_CLIENTEDGE
648#undef WS_EX_CONTEXTHELP
649#undef WS_EX_RIGHT
650#undef WS_EX_LEFT
651#undef WS_EX_RTLREADING
652#undef WS_EX_LTRREADING
653#undef WS_EX_LEFTSCROLLBAR
654#undef WS_EX_RIGHTSCROLLBAR
655#undef WS_EX_CONTROLPARENT
656#undef WS_EX_STATICEDGE
657#undef WS_EX_APPWINDOW
658
659
660#undef WS_OVERLAPPED
661#undef WS_POPUP
662#undef WS_CHILD
663#undef WS_MINIMIZE
664#undef WS_VISIBLE
665#undef WS_DISABLED
666#undef WS_CLIPSIBLINGS
667#undef WS_CLIPCHILDREN
668#undef WS_MAXIMIZE
669#undef WS_CAPTION
670#undef WS_BORDER
671#undef WS_DLGFRAME
672#undef WS_VSCROLL
673#undef WS_HSCROLL
674#undef WS_SYSMENU
675#undef WS_THICKFRAME
676#undef WS_GROUP
677#undef WS_TABSTOP
678#undef WS_MINIMIZEBOX
679#undef WS_MAXIMIZEBOX
680
681#undef DS_ABSALIGN
682#undef DS_SYSMODAL
683#undef DS_LOCALEDIT
684#undef DS_SETFONT
685#undef DS_MODALFRAME
686#undef DS_NOIDLEMSG
687#undef DS_SETFOREGROUND
688#undef DS_3DLOOK
689#undef DS_FIXEDSYS
690#undef DS_NOFAILCREATE
691#undef DS_CONTROL
692#undef DS_CENTER
693#undef DS_CENTERMOUSE
694#undef DS_CONTEXTHELP
695#undef DS_SHELLFONT
696
697#undef VOS_UNKNOWN
698#undef VOS_DOS
699#undef VOS_NT
700#undef VOS__WINDOWS16
701#undef VOS__WINDOWS32
702#undef VOS_OS216
703#undef VOS_OS232
704#undef VOS__PM16
705#undef VOS__PM32
706#undef VOS_DOS_WINDOWS16
707#undef VOS_DOS_WINDOWS32
708#undef VOS_NT_WINDOWS32
709#undef VOS_OS216_PM16
710#undef VOS_OS232_PM32
711
712#undef VS_FF_DEBUG
713#undef VS_FF_INFOINFERRED
714#undef VS_FF_PATCHED
715#undef VS_FF_PRERELEASE
716#undef VS_FF_PRIVATEBUILD
717#undef VS_FF_SPECIALBUILD
718
719#undef VFT_APP
720#undef VFT_DLL
721#undef VFT_DRV
722#undef VFT_FONT
723#undef VFT_STATIC_LIB
724#undef VFT_UNKNOWN
725#undef VFT_VXD
726
727#undef VFT2_DRV_COMM
728#undef VFT2_DRV_DISPLAY
729#undef VFT2_DRV_INSTALLABLE
730#undef VFT2_DRV_KEYBOARD
731#undef VFT2_DRV_LANGUAGE
732#undef VFT2_DRV_MOUSE
733#undef VFT2_DRV_NETWORK
734#undef VFT2_DRV_PRINTER
735#undef VFT2_DRV_SOUND
736#undef VFT2_DRV_SYSTEM
737#undef VFT2_DRV_VERSIONED_PRINTER
738#undef VFT2_FONT_RASTER
739#undef VFT2_FONT_TRUETYPE
740#undef VFT2_FONT_VECTOR
741#undef VFT2_UNKNOWN
742
743#undef FVIRTKEY
744#undef FNOINVERT
745#undef FSHIFT
746#undef FCONTROL
747#undef FALT
748#undef END
749
750#undef VK_LBUTTON
751#undef VK_RBUTTON
752#undef VK_CANCEL
753#undef VK_MBUTTON
754#undef VK_XBUTTON1
755#undef VK_XBUTTON2
756#undef VK_BACK
757#undef VK_TAB
758#undef VK_CLEAR
759#undef VK_RETURN
760#undef VK_SHIFT
761#undef VK_CONTROL
762#undef VK_MENU
763#undef VK_PAUSE
764#undef VK_CAPITAL
765#undef VK_KANA
766#undef VK_HANGUEL
767#undef VK_HANGUL
768#undef VK_IME_ON
769#undef VK_JUNJA
770#undef VK_FINAL
771#undef VK_HANJA
772#undef VK_KANJI
773#undef VK_IME_OFF
774#undef VK_ESCAPE
775#undef VK_CONVERT
776#undef VK_NONCONVERT
777#undef VK_ACCEPT
778#undef VK_MODECHANGE
779#undef VK_SPACE
780#undef VK_PRIOR
781#undef VK_NEXT
782#undef VK_END
783#undef VK_HOME
784#undef VK_LEFT
785#undef VK_UP
786#undef VK_RIGHT
787#undef VK_DOWN
788#undef VK_SELECT
789#undef VK_PRINT
790#undef VK_EXECUTE
791#undef VK_SNAPSHOT
792#undef VK_INSERT
793#undef VK_DELETE
794#undef VK_HELP
795#undef VK_0
796#undef VK_1
797#undef VK_2
798#undef VK_3
799#undef VK_4
800#undef VK_5
801#undef VK_6
802#undef VK_7
803#undef VK_8
804#undef VK_9
805#undef VK_A
806#undef VK_B
807#undef VK_C
808#undef VK_D
809#undef VK_E
810#undef VK_F
811#undef VK_G
812#undef VK_H
813#undef VK_I
814#undef VK_J
815#undef VK_K
816#undef VK_L
817#undef VK_M
818#undef VK_N
819#undef VK_O
820#undef VK_P
821#undef VK_Q
822#undef VK_R
823#undef VK_S
824#undef VK_T
825#undef VK_U
826#undef VK_V
827#undef VK_W
828#undef VK_X
829#undef VK_Y
830#undef VK_Z
831#undef VK_LWIN
832#undef VK_RWIN
833#undef VK_APPS
834#undef VK_SLEEP
835#undef VK_NUMPAD0
836#undef VK_NUMPAD1
837#undef VK_NUMPAD2
838#undef VK_NUMPAD3
839#undef VK_NUMPAD4
840#undef VK_NUMPAD5
841#undef VK_NUMPAD6
842#undef VK_NUMPAD7
843#undef VK_NUMPAD8
844#undef VK_NUMPAD9
845#undef VK_MULTIPLY
846#undef VK_ADD
847#undef VK_SEPARATOR
848#undef VK_SUBTRACT
849#undef VK_DECIMAL
850#undef VK_DIVIDE
851#undef VK_F1
852#undef VK_F2
853#undef VK_F3
854#undef VK_F4
855#undef VK_F5
856#undef VK_F6
857#undef VK_F7
858#undef VK_F8
859#undef VK_F9
860#undef VK_F10
861#undef VK_F11
862#undef VK_F12
863#undef VK_F13
864#undef VK_F14
865#undef VK_F15
866#undef VK_F16
867#undef VK_F17
868#undef VK_F18
869#undef VK_F19
870#undef VK_F20
871#undef VK_F21
872#undef VK_F22
873#undef VK_F23
874#undef VK_F24
875#undef VK_NUMLOCK
876#undef VK_SCROLL
877#undef VK_LSHIFT
878#undef VK_RSHIFT
879#undef VK_LCONTROL
880#undef VK_RCONTROL
881#undef VK_LMENU
882#undef VK_RMENU
883#undef VK_BROWSER_BACK
884#undef VK_BROWSER_FORWARD
885#undef VK_BROWSER_REFRESH
886#undef VK_BROWSER_STOP
887#undef VK_BROWSER_SEARCH
888#undef VK_BROWSER_FAVORITES
889#undef VK_BROWSER_HOME
890#undef VK_VOLUME_MUTE
891#undef VK_VOLUME_DOWN
892#undef VK_VOLUME_UP
893#undef VK_MEDIA_NEXT_TRACK
894#undef VK_MEDIA_PREV_TRACK
895#undef VK_MEDIA_STOP
896#undef VK_MEDIA_PLAY_PAUSE
897#undef VK_LAUNCH_MAIL
898#undef VK_LAUNCH_MEDIA_SELECT
899#undef VK_LAUNCH_APP1
900#undef VK_LAUNCH_APP2
901#undef VK_OEM_1
902#undef VK_OEM_PLUS
903#undef VK_OEM_COMMA
904#undef VK_OEM_MINUS
905#undef VK_OEM_PERIOD
906#undef VK_OEM_2
907#undef VK_OEM_4
908#undef VK_OEM_5
909#undef VK_OEM_6
910#undef VK_OEM_7
911#undef VK_OEM_8
912#undef VK_OEM_102
913#undef VK_PROCESSKEY
914#undef VK_PACKET
915#undef VK_ATTN
916#undef VK_CRSEL
917#undef VK_EXSEL
918#undef VK_EREOF
919#undef VK_PLAY
920#undef VK_ZOOM
921#undef VK_NONAME
922#undef VK_PA1
923#undef VK_OEM_CLEAR
924
925#endif