windows.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #ifndef _WINDOWS_
  7. #define _WINDOWS_
  8. #include <_mingw.h>
  9. #include <sdkddkver.h>
  10. /* Some kludge for Obj-C.
  11. For Obj-C the 'interface' is a keyword, but interface is used
  12. in midl-code too. To resolve this conflict for at least the
  13. main windows API header, we define it here temporary. */
  14. #ifdef __OBJC__
  15. #pragma push_macro("interface")
  16. #undef interface
  17. #define interface struct
  18. #endif
  19. #ifndef _INC_WINDOWS
  20. #define _INC_WINDOWS
  21. #if defined(RC_INVOKED) && !defined(NOWINRES)
  22. #include <winresrc.h>
  23. #else
  24. #ifdef RC_INVOKED
  25. #define NOATOM
  26. #define NOGDI
  27. #define NOGDICAPMASKS
  28. #define NOMETAFILE
  29. #define NOMINMAX
  30. #define NOMSG
  31. #define NOOPENFILE
  32. #define NORASTEROPS
  33. #define NOSCROLL
  34. #define NOSOUND
  35. #define NOSYSMETRICS
  36. #define NOTEXTMETRIC
  37. #define NOWH
  38. #define NOCOMM
  39. #define NOKANJI
  40. #define NOCRYPT
  41. #define NOMCX
  42. #endif
  43. #if defined(__x86_64) && \
  44. !(defined(_X86_) || defined(__i386__) || defined(_IA64_))
  45. #if !defined(_AMD64_)
  46. #define _AMD64_
  47. #endif
  48. #endif /* _AMD64_ */
  49. #if defined(__ia64__) && \
  50. !(defined(_X86_) || defined(__x86_64) || defined(_AMD64_))
  51. #if !defined(_IA64_)
  52. #define _IA64_
  53. #endif
  54. #endif /* _IA64_ */
  55. #ifndef RC_INVOKED
  56. #include <excpt.h>
  57. #include <stdarg.h>
  58. #endif
  59. #include <windef.h>
  60. #include <winbase.h>
  61. #include <wingdi.h>
  62. #include <winuser.h>
  63. #include <winnls.h>
  64. #include <wincon.h>
  65. #include <winver.h>
  66. #include <winreg.h>
  67. #include <winnetwk.h>
  68. #include <virtdisk.h>
  69. #ifndef WIN32_LEAN_AND_MEAN
  70. #include <cderr.h>
  71. #include <dde.h>
  72. #include <ddeml.h>
  73. #include <dlgs.h>
  74. #include <lzexpand.h>
  75. #include <mmsystem.h>
  76. #include <nb30.h>
  77. #include <rpc.h>
  78. #include <shellapi.h>
  79. #include <winperf.h>
  80. #if defined(__USE_W32_SOCKETS) || !defined(__CYGWIN__)
  81. #include <winsock.h>
  82. #endif
  83. #ifndef NOCRYPT
  84. #include <wincrypt.h>
  85. #include <winefs.h>
  86. #include <winscard.h>
  87. #endif
  88. #ifndef NOUSER
  89. #ifndef NOGDI
  90. #include <winspool.h>
  91. #ifdef INC_OLE1
  92. #include <ole.h>
  93. #else
  94. #include <ole2.h>
  95. #endif
  96. #include <commdlg.h>
  97. #endif
  98. #endif
  99. #endif
  100. #ifndef __CYGWIN__
  101. #include <stralign.h>
  102. #endif
  103. #ifdef INC_OLE2
  104. #include <ole2.h>
  105. #endif
  106. #ifndef NOSERVICE
  107. #include <winsvc.h>
  108. #endif
  109. #ifndef NOMCX
  110. #include <mcx.h>
  111. #endif
  112. #ifndef NOIME
  113. #include <imm.h>
  114. #endif
  115. #endif
  116. #endif
  117. /* Restore old value of interface for Obj-C. See above. */
  118. #ifdef __OBJC__
  119. #pragma pop_macro("interface")
  120. #endif
  121. #endif