home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 August / Chip_2000-08_cd1.bin / sharewar / dvcpp / _SETUP.5 / Group3 / windows.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-03-08  |  2.8 KB  |  126 lines

  1. /*
  2.     windows.h - main header file for the Win32 API
  3.  
  4.     Written by Anders Norlander <anorland@hem2.passagen.se>
  5.  
  6.     This file is part of a free library for the Win32 API.
  7.  
  8.     This library is distributed in the hope that it will be useful,
  9.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  11.  
  12. */
  13. #ifndef _WINDOWS_H
  14. #define _WINDOWS_H
  15.  
  16. #if defined(__i386__) && !defined(_M_IX86)
  17. #define _M_IX86 300
  18. #endif
  19. #if !defined(_X86_) && defined(_M_IX86)
  20. #define _X86_ M_IX86
  21. #endif
  22. #if !defined(i386) && defined(_M_IX86)
  23. #define i386
  24. #endif
  25.  
  26. #ifdef RC_INVOKED
  27. /* winresrc.h includes the necessary headers */
  28. #include <winresrc.h>
  29. #else
  30.  
  31. #ifdef __GNUC__
  32. /* Nameless unions are supported in G++ */
  33. #if defined(__cplusplus) && !defined(NONAMELESSUNION)
  34. #define _ANONYMOUS_UNION
  35. #endif
  36. #elif defined(_MSC_VER) || defined(__LCC__)
  37. /* MSVC and LCC-Win32 support nameless unions and structs */
  38. #ifndef NONAMELESSUNIUN
  39. #define _ANONYMOUS_UNION
  40. #endif
  41. #ifndef NONAMELESSSTRUCT
  42. #define _ANONYMOUS_STRUCT
  43. #endif
  44. #elif defined(__BORLANDC__)
  45. /* BC 5.01 support nameless unions in C/C++ and
  46.    nameless structs in C++ */
  47. #ifndef NONAMELESSUNIUN
  48. #define _ANONYMOUS_UNION
  49. #endif
  50. #if defined(__cplusplus) && !defined(NONAMELESSSTRUCT)
  51. #define _ANONYMOUS_STRUCT
  52. #pragma anon_struct on
  53. #endif
  54. #endif
  55.  
  56. #ifndef _ANONYMOUS_UNION
  57. #define _UNION_NAME(x) x
  58. #define DUMMYUNIONNAME    u
  59. #define DUMMYUNIONNAME2    u2
  60. #define DUMMYUNIONNAME3    u3
  61. #define DUMMYUNIONNAME4    u4
  62. #define DUMMYUNIONNAME5    u5
  63. #else
  64. #define _UNION_NAME(x)
  65. #define DUMMYUNIONNAME
  66. #define DUMMYUNIONNAME2
  67. #define DUMMYUNIONNAME3
  68. #define DUMMYUNIONNAME4
  69. #define DUMMYUNIONNAME5
  70. #endif
  71. #ifndef _ANONYMOUS_STRUCT
  72. #define _STRUCT_NAME(x) x
  73. #define DUMMYSTRUCTNAME    s
  74. #define DUMMYSTRUCTNAME2 s2
  75. #define DUMMYSTRUCTNAME3 s3
  76. #else
  77. #define _STRUCT_NAME(x)
  78. #define DUMMYSTRUCTNAME
  79. #define DUMMYSTRUCTNAME2
  80. #define DUMMYSTRUCTNAME3
  81. #endif
  82.  
  83. #include <stdarg.h>
  84. #include <windef.h>
  85. #include <wincon.h>
  86. #include <basetyps.h>
  87. #include <excpt.h>
  88. #include <winbase.h>
  89. #include <wingdi.h>
  90. #include <winuser.h>
  91. #include <winnls.h>
  92. #include <winver.h>
  93. #include <winnetwk.h>
  94. #include <winreg.h>
  95. #include <winsvc.h>
  96.  
  97. #ifndef WIN32_LEAN_AND_MEAN
  98. #include <commdlg.h>
  99. #include <cderr.h>
  100. #include <dde.h>
  101. #include <ddeml.h>
  102. #include <dlgs.h>
  103. #include <lzexpand.h>
  104. #include <nb30.h>
  105. #include <rpc.h>
  106. #include <shellapi.h>
  107. #include <winperf.h>
  108. #include <winspool.h>
  109. #if defined(Win32_Winsock) || !(defined(__INSIDE_CYGWIN__) || defined(__CYGWIN_) || defined(__CYGWIN32__))
  110. #include <winsock.h>
  111. #endif
  112. #endif /* WIN32_LEAN_AND_MEAN */
  113.  
  114. #endif
  115.  
  116. #ifdef __OBJC__
  117. /* FIXME: Not undefining BOOL here causes all BOOLs to be WINBOOL (int),
  118.    but undefining it causes trouble as well.
  119. */
  120. #if 0
  121. #undef BOOL
  122. #endif
  123. #endif
  124.  
  125. #endif
  126.