--- mstools/h/windef.h 2018/08/09 18:20:32 1.1.1.2 +++ mstools/h/windef.h 2018/08/09 18:23:06 1.1.1.4 @@ -1,6 +1,6 @@ -/*++ BUILD Version: 0001 // Increment this if a change has global effects +/*++ BUILD Version: 0001 Increment this if a change has global effects -Copyright (c) 1985-91, Microsoft Corporation +Copyright (c) 1985-1993, Microsoft Corporation Module Name: @@ -15,33 +15,33 @@ Abstract: #ifndef _WINDEF_ #define _WINDEF_ -// the typedef of ULONG should go away here. It will continue to be -// defined in windows\inc\windefp.h - -#ifndef BASETYPE_ULONG -#define BASETYPE_ULONG -typedef unsigned long ULONG; -typedef ULONG *PULONG; +#ifdef __cplusplus +extern "C" { #endif -//#ifndef NO_STRICT -//#define STRICT 1 -//#endif -// BASETYPES is defined in ntdef.h if these types are already defined +/* + * BASETYPES is defined in ntdef.h if these types are already defined + */ #ifndef BASETYPES #define BASETYPES +typedef unsigned long ULONG; +typedef ULONG *PULONG; typedef unsigned short USHORT; typedef USHORT *PUSHORT; typedef unsigned char UCHAR; typedef UCHAR *PUCHAR; typedef char *PSZ; -#endif // !BASETYPES +#endif /* !BASETYPES */ #define MAX_PATH 260 #ifndef NULL -#define NULL 0 +#ifdef __cplusplus +#define NULL 0 +#else +#define NULL ((void *)0) +#endif #endif #ifndef FALSE @@ -64,9 +64,18 @@ typedef char *PSZ; #define OPTIONAL #endif +#undef far +#undef near +#undef pascal + #define far #define near +#if (_MSC_VER >= 800) +#define pascal __stdcall +#else #define pascal +#endif + #ifdef DOSWIN32 #define cdecl _cdecl #ifndef CDECL @@ -78,14 +87,25 @@ typedef char *PSZ; #define CDECL #endif #endif + +#if (_MSC_VER >= 800) +#define CALLBACK __stdcall +#define WINAPI __stdcall +#define WINAPIV __cdecl +#define APIENTRY WINAPI +#define APIPRIVATE __stdcall +#define PASCAL __stdcall +#else #define CALLBACK #define WINAPI +#define WINAPIV #define APIENTRY WINAPI #define APIPRIVATE +#define PASCAL pascal +#endif #define FAR far #define NEAR near -#define PASCAL pascal #ifndef CONST #define CONST const #endif @@ -108,6 +128,7 @@ typedef long far *LPLONG; typedef DWORD near *PDWORD; typedef DWORD far *LPDWORD; typedef void far *LPVOID; +typedef CONST void far *LPCVOID; typedef int INT; typedef unsigned int UINT; @@ -115,12 +136,7 @@ typedef unsigned int *PUINT; #ifndef NT_INCLUDED #include -#endif // NT_INCLUDED - -#ifdef STRICT -#undef LONG -typedef signed long LONG; -#endif +#endif /* NT_INCLUDED */ /* Types use for passing & returning polymorphic values */ typedef UINT WPARAM; @@ -158,20 +174,14 @@ typedef HANDLE NEAR *SPHANDLE; typedef HANDLE FAR *LPHANDLE; typedef HANDLE HGLOBAL; typedef HANDLE HLOCAL; -typedef HANDLE GLOBALHANDLE; -typedef HANDLE LOCALHANDLE; -#ifdef STRICT -typedef void (FAR WINAPI *FARPROC)(void); // should be removed some day!!! -typedef void (NEAR WINAPI *NEARPROC)(void); -typedef void (WINAPI *PROC)(void); // new 32-bit version -#else -typedef int (FAR WINAPI *FARPROC)(); // should be removed some day!!! +typedef HANDLE GLOBALHANDLE; +typedef HANDLE LOCALHANDLE; +typedef int (FAR WINAPI *FARPROC)(); typedef int (NEAR WINAPI *NEARPROC)(); -typedef int (WINAPI *PROC)(); // new 32-bit version -#endif +typedef int (WINAPI *PROC)(); #ifdef STRICT -typedef const void NEAR* HGDIOBJ; +typedef void NEAR* HGDIOBJ; #else DECLARE_HANDLE(HGDIOBJ); #endif @@ -182,13 +192,12 @@ DECLARE_HANDLE(HBRUSH); DECLARE_HANDLE(HDC); DECLARE_HANDLE(HDESK); DECLARE_HANDLE(HENHMETAFILE); -DECLARE_HANDLE(HMF); -DECLARE_HANDLE(HEMF); DECLARE_HANDLE(HFONT); DECLARE_HANDLE(HICON); DECLARE_HANDLE(HMENU); DECLARE_HANDLE(HMETAFILE); -DECLARE_HANDLE(HMODULE); +DECLARE_HANDLE(HINSTANCE); +typedef HINSTANCE HMODULE; /* HMODULEs can be used in place of HINSTANCEs */ DECLARE_HANDLE(HPALETTE); DECLARE_HANDLE(HPEN); DECLARE_HANDLE(HRGN); @@ -198,7 +207,7 @@ DECLARE_HANDLE(HWINSTA); DECLARE_HANDLE(HKL); typedef int HFILE; /* Polymorphic with C runtime file handle type */ -typedef HICON HCURSOR; /* HICONs & HCURSORs are polymorphic */ +typedef HICON HCURSOR; /* HICONs & HCURSORs are polymorphic */ typedef DWORD COLORREF; typedef DWORD *LPCOLORREF; @@ -279,5 +288,8 @@ typedef struct tagPOINTS #define DC_ORIENTATION 17 #define DC_COPIES 18 +#ifdef __cplusplus +} +#endif -#endif // _WINDEF_ +#endif /* _WINDEF_ */