📄 windows.inc
字号:
; Conventional dialog box and message box command IDs
;
IDOK = 1
IDCANCEL = 2
IDABORT = 3
IDRETRY = 4
IDIGNORE = 5
IDYES = 6
IDNO = 7
;
; Flags for OpenFile
;
OF_READ = 0000H
OF_WRITE = 0001H
OF_READWRITE = 0002H
OF_SHARE_COMPAT = 0000H
OF_SHARE_EXCLUSIVE = 0010H
OF_SHARE_DENY_WRITE = 0020H
OF_SHARE_DENY_READ = 0030H
OF_SHARE_DENY_NONE = 0040H
OF_PARSE = 0100H
OF_DELETE = 0200H
OF_VERIFY = 0400H ; Used with OF_REOPEN
OF_SEARCH = 0400H ; Used without OF_REOPEN
OF_CANCEL = 0800H
OF_CREATE = 1000H
OF_PROMPT = 2000H
OF_EXIST = 4000H
OF_REOPEN = 8000H
TF_FORCEDRIVE = 80H
OPENSTRUC STRUC
opLen db ?
opDisk db ?
opXtra dw ?
opDate dw ?
opTime dw ?
opFile db 120 dup (?)
OPENSTRUC ENDS
OPENSTRUCEX STRUC
opexLen dw ?
opexDisk db ?
opexXtra dw ?
dd ?
opexFile db 260 dup (?)
OPENSTRUCEX ENDS
;
; DrawText format flags
;
DT_LEFT = 00H
DT_CENTER = 01H
DT_RIGHT = 02H
DT_TOP = 00H
DT_VCENTER = 04H
DT_BOTTOM = 08H
DT_WORDBREAK = 10H
DT_SINGLELINE = 20H
DT_EXPANDTABS = 40H
DT_TABSTOP = 80H
DT_NOCLIP = 0100H
DT_EXTERNALLEADING = 0200H
DT_CALCRECT = 0400H
DT_NOPREFIX = 0800H
DT_INTERNAL = 1000H
ENDIF
;
; ExtFloodFill style flags
;
FLOODFILLBORDER = 0
FLOODFILLSURFACE = 1
;
; Memory manager flags
;
LMEM_FIXED = 0000h
LMEM_MOVEABLE = 0002h
LMEM_NOCOMPACT = 0010H
LMEM_NODISCARD = 0020H
LMEM_ZEROINIT = 0040h
LMEM_MODIFY = 0080H
LMEM_DISCARDABLE= 0F00h
LHND = LMEM_MOVEABLE+LMEM_ZEROINIT
LPTR = LMEM_FIXED+LMEM_ZEROINIT
; Flags returned by LocalFlags (in addition to LMEM_DISCARDABLE)
LMEM_DISCARDED = 4000H
LMEM_LOCKCOUNT = 00FFH
NONZEROLHND = LMEM_MOVEABLE
NONZEROLPTR = LMEM_FIXED
GMEM_FIXED = 0000h
GMEM_MOVEABLE = 0002h
GMEM_NOCOMPACT = 0010h
GMEM_NODISCARD = 0020h
GMEM_ZEROINIT = 0040h
GMEM_MODIFY = 0080h
GMEM_DISCARDABLE= 0100h
GMEM_NOT_BANKED = 1000h
GMEM_DDESHARE = 2000h
GMEM_SHARE = 2000h
GMEM_NOTIFY = 4000h
GMEM_LOWER = GMEM_NOT_BANKED
GHND = GMEM_MOVEABLE+GMEM_ZEROINIT
GPTR = GMEM_FIXED+GMEM_ZEROINIT
; Flags returned by GlobalFlags (in addition to GMEM_DISCARDABLE)
GMEM_DISCARDED = 4000h
GMEM_LOCKCOUNT = 00FFh
; Flags returned by GetWinFlags
WF_PMODE = 0001h
WF_CPU286 = 0002h
WF_CPU386 = 0004h
WF_CPU486 = 0008h
WF_STANDARD = 0010h
WF_WIN286 = 0010h
WF_ENHANCED = 0020h
WF_WIN386 = 0020h
WF_CPU086 = 0040h
WF_CPU186 = 0080h
WF_CPUR4000 = 0100h
WF_RESERVED200 = 0200h
WF_80x87 = 0400h
WF_PAGING = 0800h
WF_DOSPAGING = 1000h
WF_HASCPUID = 2000h
WF_WINNT = 4000h
WF_WLO = 8000h
WF_CPUMASK = 0FC00h ; mask against hiword of GetWinFlags
WF_CPU_X86 = 0
WF_CPU_R4000 = 1
WF_CPU_ALPHA = 2
WF_CPU_CLIPPER = 3
; WEP fSystemExit flag values
WEP_SYSTEM_EXIT = 1
WEP_FREE_DLL = 0
; Virtual Keys, Standard Set
IFNDEF NOVK
VK_LBUTTON = 01H
VK_RBUTTON = 02H
VK_CANCEL = 03H
VK_MBUTTON = 04H
VK_XBUTTON1 = 05H
VK_XBUTTON2 = 06H
VK_BACK = 08H
VK_TAB = 09H
VK_CLEAR = 0cH
VK_RETURN = 0dH
VK_SHIFT = 10H
VK_CONTROL = 11H
VK_MENU = 12H
VK_PAUSE = 13H
VK_CAPITAL = 14H
VK_ESCAPE = 1bH
VK_SPACE = 20H
VK_PRIOR = 21H
VK_NEXT = 22H
VK_END = 23H
VK_HOME = 24H
VK_LEFT = 25H
VK_UP = 26H
VK_RIGHT = 27H
VK_DOWN = 28H
; VK_A thru VK_Z are the same as their ASCII equivalents: 'A' thru 'Z'
; VK_0 thru VK_9 are the same as their ASCII equivalents: '0' thru '0'
VK_PRINT = 2aH
VK_EXECUTE = 2bH
VK_SNAPSHOT = 2ch ; Printscreen key..
VK_INSERT = 2dH
VK_DELETE = 2eH
VK_HELP = 2fH
VK_NUMPAD0 = 60H
VK_NUMPAD1 = 61H
VK_NUMPAD2 = 62H
VK_NUMPAD3 = 63H
VK_NUMPAD4 = 64H
VK_NUMPAD5 = 65H
VK_NUMPAD6 = 66H
VK_NUMPAD7 = 67H
VK_NUMPAD8 = 68H
VK_NUMPAD9 = 69H
VK_MULTIPLY = 6AH
VK_ADD = 6BH
VK_SEPARATER = 6CH
VK_SUBTRACT = 6DH
VK_DECIMAL = 6EH
VK_DIVIDE = 6FH
VK_F1 = 70H
VK_F2 = 71H
VK_F3 = 72H
VK_F4 = 73H
VK_F5 = 74H
VK_F6 = 75H
VK_F7 = 76H
VK_F8 = 77H
VK_F9 = 78H
VK_F10 = 79H
VK_F11 = 7aH
VK_F12 = 7bH
VK_F13 = 7cH
VK_F14 = 7dH
VK_F15 = 7eH
VK_F16 = 7fH
VK_F17 = 80H
VK_F18 = 81H
VK_F19 = 82H
VK_F20 = 83H
VK_F21 = 84H
VK_F22 = 85H
VK_F23 = 86H
VK_F24 = 87H
VK_NUMLOCK = 90H
VK_SCROLL = 91H
VK_PACKET = 0E7H
ENDIF
IFNDEF NOWH
; SetWindowsHook() codes
WH_MSGFILTER = (-1)
WH_JOURNALRECORD = 0
WH_JOURNALPLAYBACK = 1
WH_KEYBOARD = 2
WH_GETMESSAGE = 3
WH_CALLWNDPROC = 4
IFNDEF NOWIN31
WH_CBT = 5
WH_SYSMSGFILTER = 6
WH_MOUSE = 7
WH_HARDWARE = 8
WH_DEBUG = 9
ENDIF
;
; Hook Codes
HC_GETLPLPFN = (-3)
HC_LPLPFNNEXT = (-2)
HC_LPFNNEXT = (-1)
HC_ACTION = 0
HC_GETNEXT = 1
HC_SKIP = 2
HC_NOREM = 3
HC_NOREMOVE = 3
HC_SYSMODALON = 4
HC_SYSMODALOFF = 5
;
; CBT Hook Codes
HCBT_MOVESIZE = 0
HCBT_MINMAX = 1
HCBT_QS = 2
HCBT_CREATEWND = 3
HCBT_DESTROYWND = 4
HCBT_ACTIVATE = 5
HCBT_CLICKSKIPPED = 6
HCBT_KEYSKIPPED = 7
HCBT_SYSCOMMAND = 8
HCBT_SETFOCUS = 9
;
; WH_MSGFILTER Filter Proc Codes
MSGF_DIALOGBOX = 0
MSGF_MENU = 2
MSGF_MOVE = 3
MSGF_SIZE = 4
MSGF_SCROLLBAR = 5
MSGF_NEXTWINDOW = 6
;
; Window Manager Hook Codes
WC_INIT = 1
WC_SWP = 2
WC_DEFWINDOWPROC = 3
WC_MINMAX = 4
WC_MOVE = 5
WC_SIZE = 6
WC_DRAWCAPTION = 7
;
; Message Structure used in Journaling
EVENTMSG struc
message dw ?
paramL dw ?
paramH dw ?
time dd ?
EVENTMSG ends
ENDIF ;NOWH
; Window field offsets for GetWindowLong() and GetWindowWord()
GWL_WNDPROC = (-4)
GWW_HINSTANCE = (-6)
GWW_HWNDPARENT = (-8)
GWW_ID = (-12)
GWL_STYLE = (-16)
GWL_EXSTYLE = (-20)
; GetWindow() Constants
GW_HWNDFIRST = 0
GW_HWNDLAST = 1
GW_HWNDNEXT = 2
GW_HWNDPREV = 3
GW_OWNER = 4
GW_CHILD = 5
; Class field offsets for GetClassLong() and GetClassWord()
GCL_MENUNAME = (-8)
GCW_HBRBACKGROUND = (-10)
GCW_HCURSOR = (-12)
GCW_HICON = (-14)
GCW_HMODULE = (-16)
GCW_CBWNDEXTRA = (-18)
GCW_CBCLSEXTRA = (-20)
GCL_WNDPROC = (-24)
GCW_STYLE = (-26)
; WinWhere() Area Codes
HTERROR = (-2)
HTTRANSPARENT = (-1)
HTNOWHERE = 0
HTCLIENT = 1
HTCAPTION = 2
HTSYSMENU = 3
HTGROWBOX = 4
HTSIZE = HTGROWBOX
HTMENU = 5
HTHSCROLL = 6
HTVSCROLL = 7
HTREDUCE = 8
HTZOOM = 9
HTLEFT = 10
HTRIGHT = 11
HTTOP = 12
HTTOPLEFT = 13
HTTOPRIGHT = 14
HTBOTTOM = 15
HTBOTTOMLEFT = 16
HTBOTTOMRIGHT = 17
HTSIZEFIRST = HTLEFT
HTSIZELAST = HTBOTTOMRIGHT
;*************************************************************************
;
; Misc structures & constants
;
;*************************************************************************
IFNDEF NOMST
POINT struc
ptX dw ?
ptY dw ?
POINT ends
LOGPEN struc
lopnStyle dw ?
lopnWidth db (SIZE POINT) DUP(?)
lopnColor dd ?
LOGPEN ends
BITMAP STRUC
bmType DW ?
bmWidth DW ?
bmHeight DW ?
bmWidthBytes DW ?
bmPlanes DB ?
bmBitsPixel DB ?
bmBits DD ?
BITMAP ENDS
RGBTRIPLE struc
rgbBlue db ?
rgbGreen db ?
rgbRed db ?
RGBTRIPLE ends
RGBQUAD struc
rgbqBlue db ?
rgbqGreen db ?
rgbqRed db ?
rgbqReserved db ?
RGBQUAD ends
; structures for defining DIBs
BITMAPCOREHEADER struc
bcSize dd ?
bcWidth dw ?
bcHeight dw ?
bcPlanes dw ?
bcBitCount dw ?
BITMAPCOREHEADER ends
BITMAPINFOHEADER struc
biSize dd ?
biWidth dd ?
biHeight dd ?
biPlanes dw ?
biBitCount dw ?
biCompression dd ?
biSizeImage dd ?
biXPelsPerMeter dd ?
biYPelsPerMeter dd ?
biClrUsed dd ?
biClrImportant dd ?
BITMAPINFOHEADER ends
BITMAPINFO struc
bmiHeader db (SIZE BITMAPINFOHEADER) DUP (?)
bmiColors db ? ; array of RGBQUADs
BITMAPINFO ends
BITMAPCOREINFO struc
bmciHeader db (SIZE BITMAPCOREHEADER) DUP (?)
bmciColors db ? ; array of RGBTRIPLEs
BITMAPCOREINFO ends
BITMAPFILEHEADER struc
bfType dw ?
bfSize dd ?
bfReserved1 dw ?
bfReserved2 dw ?
bfOffBits dd ?
BITMAPFILEHEADER ends
WNDSTRUC struc
WSwndStyle dd ?
WSwndID dw ?
WSwndText dw ?
WSwndParent dw ?
WSwndInstance dw ?
WSwndClassProc dd ?
WNDSTRUC ends
;
; Message structure
;
MSGSTRUCT struc
msHWND dw ?
msMESSAGE dw ?
msWPARAM dw ?
msLPARAM dd ?
msTIME dd ?
msPT dd ?
MSGSTRUCT ends
NEWPARMS struc
nprmHwnd dw ?
nprmCmd db ?
NEWPARMS ends
ENDIF
PAINTSTRUCT STRUC
PShdc DW ?
PSfErase DW ?
PSrcPaint DB size RECT dup(?)
PSfRestore DW ?
PSfIncUpdate DW ?
PSrgbReserved DB 16 dup(?)
PAINTSTRUCT ENDS
CREATESTRUCT struc
cs_lpCreateParams dd ?
cs_hInstance dw ?
cs_hMenu dw ?
cs_hwndParent dw ?
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -