📄 windef.h
字号:
/*++
Copyright (c) 1985-1996 Microsoft Corporation
Module Name:
windef.h
Abstract:
Basic Windows Type Definitions.
Revision History:
--*/
#ifndef _WINDEF_
#define _WINDEF_
#ifdef __cplusplus
extern "C" {
#endif
#ifndef WINVER
#define WINVER 0x0400
#endif /* WINVER */
/*
* 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 */
#define MAX_PATH 260
#ifndef NULL
#ifdef __cplusplus
#define NULL 0
#else
#define NULL ((void *)0)
#endif
#endif
#ifndef FALSE
#define FALSE 0
#endif
#ifndef TRUE
#define TRUE 1
#endif
#ifndef IN
#define IN
#endif
#ifndef OUT
#define OUT
#endif
#ifndef OPTIONAL
#define OPTIONAL
#endif
#undef far
#undef near
#undef pascal
#define far
#define near
//#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
//#define pascal __stdcall
//#else
#define pascal
//#endif
#ifdef DOSWIN32
#define cdecl _cdecl
#ifndef CDECL
#define CDECL _cdecl
#endif
#else
#define cdecl
#ifndef CDECL
#define CDECL
#endif
#endif
//#if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
//#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
#ifndef CONST
#define CONST const
#endif
typedef unsigned long DWORD;
typedef int BOOL;
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef float FLOAT;
typedef FLOAT *PFLOAT;
typedef BOOL near *PBOOL;
typedef BOOL far *LPBOOL;
typedef BYTE near *PBYTE;
typedef BYTE far *LPBYTE;
typedef int near *PINT;
typedef int far *LPINT;
typedef WORD near *PWORD;
typedef WORD far *LPWORD;
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;
typedef unsigned int *PUINT;
//#ifndef NT_INCLUDED
//#include "winnt.h"
typedef void *PVOID;
typedef PVOID HANDLE;
#define DECLARE_HANDLE(name) typedef HANDLE name
//#endif /* NT_INCLUDED */
/* Types use for passing & returning polymorphic values */
//typedef UINT WPARAM;
typedef long LPARAM;
typedef long LRESULT;
#ifndef NOMINMAX
#ifndef max
#define max(a,b) (((a) > (b)) ? (a) : (b))
#endif
#ifndef min
#define min(a,b) (((a) < (b)) ? (a) : (b))
#endif
#endif /* NOMINMAX */
#define MAKEWORD(a, b) ((WORD)(((BYTE)(a)) | ((WORD)((BYTE)(b))) << 8))
#define MAKELONG(a, b) ((LONG)(((WORD)(a)) | ((DWORD)((WORD)(b))) << 16))
#define LOWORD(l) ((WORD)(l))
#define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
#define LOBYTE(w) ((BYTE)(w))
#define HIBYTE(w) ((BYTE)(((WORD)(w) >> 8) & 0xFF))
//#ifndef WIN_INTERNAL
DECLARE_HANDLE (HWND);
//DECLARE_HANDLE (HHOOK);
//#endif
//typedef WORD ATOM;
//typedef HANDLE NEAR *SPHANDLE;
//typedef HANDLE FAR *LPHANDLE;
typedef HANDLE HGLOBAL;
typedef HANDLE HLOCAL;
//typedef HANDLE GLOBALHANDLE;
//typedef HANDLE LOCALHANDLE;
typedef int (FAR WINAPI *FARPROC)();
typedef int (NEAR WINAPI *NEARPROC)();
typedef int (WINAPI *PROC)();
//#ifdef STRICT
//typedef void NEAR* HGDIOBJ;
//#else
//DECLARE_HANDLE(HGDIOBJ);
//#endif
//DECLARE_HANDLE(HACCEL);
//DECLARE_HANDLE(HBITMAP);
//DECLARE_HANDLE(HBRUSH);
//#if(WINVER >= 0x0400)
//DECLARE_HANDLE(HCOLORSPACE);
//#endif /* WINVER >= 0x0400 */
//DECLARE_HANDLE(HDC);
//DECLARE_HANDLE(HGLRC); // OpenGL
//DECLARE_HANDLE(HDESK);
//DECLARE_HANDLE(HENHMETAFILE);
//DECLARE_HANDLE(HFONT);
//DECLARE_HANDLE(HICON);
//DECLARE_HANDLE(HMENU);
//DECLARE_HANDLE(HMETAFILE);
//DECLARE_HANDLE(HINSTANCE);
//typedef HINSTANCE HMODULE; /* HMODULEs can be used in place of HINSTANCEs */
//DECLARE_HANDLE(HPALETTE);
//DECLARE_HANDLE(HPEN);
//DECLARE_HANDLE(HRGN);
//DECLARE_HANDLE(HRSRC);
//DECLARE_HANDLE(HSTR);
//DECLARE_HANDLE(HTASK);
//DECLARE_HANDLE(HWINSTA);
//DECLARE_HANDLE(HKL);
typedef int HFILE;
//typedef HICON HCURSOR; /* HICONs & HCURSORs are polymorphic */
typedef DWORD COLORREF;
typedef DWORD *LPCOLORREF;
#define HFILE_ERROR ((HFILE)-1)
typedef struct tagRECT
{
long left;
long top;
long right;
long bottom;
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT;
typedef const RECT FAR* LPCRECT;
typedef struct _RECTL /* rcl */
{
long left;
long top;
long right;
long bottom;
} RECTL, *PRECTL, *LPRECTL;
typedef const RECTL FAR* LPCRECTL;
typedef struct tagPOINT
{
long x;
long y;
} POINT, *PPOINT, NEAR *NPPOINT, FAR *LPPOINT;
typedef struct _POINTL /* ptl */
{
long x;
long y;
} POINTL, *PPOINTL;
typedef struct tagSIZE
{
long cx;
long cy;
} SIZE, *PSIZE, *LPSIZE;
typedef SIZE SIZEL;
typedef SIZE *PSIZEL, *LPSIZEL;
typedef struct tagPOINTS
{
short x;
short y;
} POINTS, *PPOINTS, *LPPOINTS;
/* mode selections for the device mode function */
#define DM_UPDATE 1
#define DM_COPY 2
#define DM_PROMPT 4
#define DM_MODIFY 8
#define DM_IN_BUFFER DM_MODIFY
#define DM_IN_PROMPT DM_PROMPT
#define DM_OUT_BUFFER DM_COPY
#define DM_OUT_DEFAULT DM_UPDATE
/* device capabilities indices */
#define DC_FIELDS 1
#define DC_PAPERS 2
#define DC_PAPERSIZE 3
#define DC_MINEXTENT 4
#define DC_MAXEXTENT 5
#define DC_BINS 6
#define DC_DUPLEX 7
#define DC_SIZE 8
#define DC_EXTRA 9
#define DC_VERSION 10
#define DC_DRIVER 11
#define DC_BINNAMES 12
#define DC_ENUMRESOLUTIONS 13
#define DC_FILEDEPENDENCIES 14
#define DC_TRUETYPE 15
#define DC_PAPERNAMES 16
#define DC_ORIENTATION 17
#define DC_COPIES 18
#ifdef __cplusplus
}
#endif
#endif /* _WINDEF_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -