Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

182 lines
9.1 KiB

  1. /**INC+**********************************************************************/
  2. /* */
  3. /* ddcgbtyp.h */
  4. /* */
  5. /* DC-Groupware basic types - 16-bit Windows specific header */
  6. /* */
  7. /* Copyright(c) Microsoft 1997 */
  8. /* */
  9. /****************************************************************************/
  10. /** Changes:
  11. * $Log: Y:/logs/h/dcl/ddcgbtyp.h_v $
  12. *
  13. * Rev 1.8 22 Sep 1997 15:10:22 KH
  14. * SFR1368: Keep the Win16 INI file in Windows, not Ducati, directory
  15. *
  16. * Rev 1.7 22 Aug 1997 17:36:50 AK
  17. * SFR1330: Win16 retail build support
  18. *
  19. * Rev 1.6 04 Aug 1997 14:54:44 KH
  20. * SFR1022: Move DCCALLBACK to wdcgbtyp, add LOADDS
  21. *
  22. * Rev 1.5 10 Jul 1997 17:18:56 KH
  23. * SFR1022: Get 16-bit trace working
  24. *
  25. * Rev 1.4 09 Jul 1997 17:09:48 AK
  26. * SFR1016: Initial changes to support Unicode
  27. *
  28. * Rev 1.3 04 Jul 1997 11:13:50 KH
  29. * SFR1022: Fix 16-bit compiler warnings
  30. *
  31. * Rev 1.2 25 Jun 1997 14:32:52 KH
  32. * Win16Port: 16-bit basic types
  33. *
  34. * Rev 1.1 19 Jun 1997 15:02:44 ENH
  35. * Win16Port: 16 bit specifics
  36. **/
  37. /**INC-**********************************************************************/
  38. #ifndef _H_DDCGBTYP
  39. #define _H_DDCGBTYP
  40. /****************************************************************************/
  41. /* */
  42. /* INCLUDES */
  43. /* */
  44. /****************************************************************************/
  45. /****************************************************************************/
  46. /* Check whether we should include the system headers. */
  47. /****************************************************************************/
  48. #ifndef DC_NO_SYSTEM_HEADERS
  49. /****************************************************************************/
  50. /* Force strict type checking. */
  51. /****************************************************************************/
  52. #ifndef STRICT
  53. #define STRICT
  54. #endif
  55. /****************************************************************************/
  56. /* Disable the following warnings for the Windows headers: */
  57. /* */
  58. /* 4115: named type definition in parentheses */
  59. /* 4201: nonstandard extension used : nameless struct/union */
  60. /* 4214: nonstandard extension used : bit field types other than int */
  61. /* 4702: unreachable code effect */
  62. /* 4704: in-line assembler precludes global optimizations */
  63. /* 4705: statement has no effect */
  64. /* */
  65. /****************************************************************************/
  66. #pragma warning (disable: 4115)
  67. #pragma warning (disable: 4201)
  68. #pragma warning (disable: 4214)
  69. #ifndef DC_DEBUG
  70. #pragma warning (disable: 4702)
  71. #pragma warning (disable: 4704)
  72. #pragma warning (disable: 4705)
  73. #endif
  74. /****************************************************************************/
  75. /* Include the system headers. */
  76. /****************************************************************************/
  77. #include <windows.h>
  78. #include <windowsx.h>
  79. #include <tchar.h>
  80. #include <stddef.h>
  81. #pragma warning (default: 4115)
  82. #pragma warning (default: 4201)
  83. #pragma warning (default: 4214)
  84. /****************************************************************************/
  85. /* Disable the following warnings for our code: */
  86. /* */
  87. /* 4102: "Unreferenced label" warnings so that DC_EXIT_POINT can be placed */
  88. /* in each function if there aren't (yet) any DC_QUITs. */
  89. /* 4514: unreferenced inline function has been removed */
  90. /* 4001: nonstandard extension 'single line comment' was used */
  91. /* 4058: unions are now aligned on alignment requirement, not size */
  92. /* */
  93. /****************************************************************************/
  94. #pragma warning (disable: 4102)
  95. #pragma warning (disable: 4514)
  96. #pragma warning (disable: 4001)
  97. #pragma warning (disable: 4058)
  98. /****************************************************************************/
  99. /* Promote the following warnings to errors: */
  100. /* */
  101. /* 4706 - "Assignment in conditional expression" */
  102. /* 4013 - "'FunctionName' undefined; assuming extern returning int" */
  103. /* */
  104. /* Promote the following warnings to level 3: */
  105. /* */
  106. /* 4100 - "unreferenced formal parameter" */
  107. /* 4701 - "Local variable may be used before being initialized". */
  108. /* 4244 - "conversion from 'int ' to 'short ', possible loss of data */
  109. /* 4127 - "conditional expression is constant */
  110. /* */
  111. /****************************************************************************/
  112. // #pragma warning (error: 4706)
  113. // #pragma warning (error: 4013)
  114. // #pragma warning (3 : 4100)
  115. // #pragma warning (3 : 4701)
  116. // #pragma warning (3 : 4244)
  117. // #pragma warning (4 : 4127)
  118. #endif /* DCS_NO_SYSTEM_HEADERS */
  119. /****************************************************************************/
  120. /* */
  121. /* CONSTANTS */
  122. /* */
  123. /****************************************************************************/
  124. /****************************************************************************/
  125. /* INI file access. */
  126. /****************************************************************************/
  127. #define DC_INIFILE "mstsc.ini"
  128. #define DC_INI_INTVAL1 0x7fff
  129. #define DC_INI_INTVAL2 (DC_INI_INTVAL1 - 1)
  130. #define DC_INI_STRVAL1 "x"
  131. #define DC_INI_STRVAL2 "w"
  132. /****************************************************************************/
  133. /* */
  134. /* TYPES */
  135. /* */
  136. /****************************************************************************/
  137. /****************************************************************************/
  138. /* DCPTR is used when declaring pointers to variables. Use it to get the */
  139. /* correct pointer types for your memory model/compiler. */
  140. /****************************************************************************/
  141. #define DCPTR FAR *
  142. /****************************************************************************/
  143. /* DCUNALIGNED is used to define pointers to values which are not aligned */
  144. /* on the correct boundary. Doesn't apply for 16-bit. */
  145. /****************************************************************************/
  146. #define DCUNALIGNED
  147. /****************************************************************************/
  148. /* Define function calling conventions. Note that PDCAPI should be used to */
  149. /* declare a pointer to a function. */
  150. /****************************************************************************/
  151. #define DCEXPORT __export
  152. #define DCLOADDS __loadds
  153. #define DCAPI _pascal
  154. #define DCINTERNAL _pascal
  155. #define PDCAPI DCAPI DCPTR
  156. #define PDCCALLBACK DCCALLBACK DCPTR
  157. #define PDCINTERNAL DCINTERNAL DCPTR
  158. /****************************************************************************/
  159. /* Define DCHPTR. */
  160. /****************************************************************************/
  161. #define HUGE _huge
  162. #define DCHPTR HUGE *
  163. #ifdef OS_WIN16
  164. #define UNREFERENCED_PARAMETER(P) (P)
  165. #endif // OS_WIN16
  166. #endif /* _H_DDCGBTYP */