JwaWinUser.pas
资源名称:win32api.zip [点击查看]
上传用户:davidchvip
上传日期:2009-07-28
资源大小:1749k
文件大小:670k
源码类别:
Windows编程
开发平台:
Delphi
- {******************************************************************************}
- { }
- { Windows User API interface Unit for Object Pascal }
- { }
- { Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft }
- { Corporation. All Rights Reserved. }
- { }
- { The original file is: winuser.h, released June 2000. The original Pascal }
- { code is: WinUser.pas, released December 2000. The initial developer of the }
- { Pascal code is Marcel van Brakel (brakelm@chello.nl). }
- { }
- { Portions created by Marcel van Brakel are Copyright (C) 1999-2001 }
- { Marcel van Brakel. All Rights Reserved. }
- { }
- { Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) }
- { }
- { You may retrieve the latest version of this file at the Project JEDI home }
- { page, located at http://delphi-jedi.org or my personal homepage located at }
- { http://members.chello.nl/m.vanbrakel2 }
- { }
- { The contents of this file are used with permission, subject to the Mozilla }
- { Public License Version 1.1 (the "License"); you may not use this file except }
- { in compliance with the License. You may obtain a copy of the License at }
- { http://www.mozilla.org/MPL/MPL-1.1.html }
- { }
- { Software distributed under the License is distributed on an "AS IS" basis, }
- { WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
- { the specific language governing rights and limitations under the License. }
- { }
- { Alternatively, the contents of this file may be used under the terms of the }
- { GNU Lesser General Public License (the "LGPL License"), in which case the }
- { provisions of the LGPL License are applicable instead of those above. }
- { If you wish to allow use of your version of this file only under the terms }
- { of the LGPL License and not to allow others to use your version of this file }
- { under the MPL, indicate your decision by deleting the provisions above and }
- { replace them with the notice and other provisions required by the LGPL }
- { License. If you do not delete the provisions above, a recipient may use }
- { your version of this file under either the MPL or the LGPL License. }
- { }
- { For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
- { }
- {******************************************************************************}
- unit JwaWinUser;
- {$WEAKPACKAGEUNIT}
- {$HPPEMIT ''}
- {$HPPEMIT '#include "WinUser.h"'}
- {$HPPEMIT ''}
- {$I WINDEFINES.INC}
- interface
- uses
- JwaWinBase, JwaWinGDI, JwaWinNT, JwaWinType;
- const
- UINT_MAX = UINT($FFFFFFFF); // from limits.h TODO
- {$EXTERNALSYM UINT_MAX}
- type
- HDWP = HANDLE;
- {$EXTERNALSYM HDWP}
- MENUTEMPLATEA = Pointer;
- {$EXTERNALSYM MENUTEMPLATEA}
- MENUTEMPLATEW = Pointer;
- {$EXTERNALSYM MENUTEMPLATEW}
- {$IFDEF UNICODE}
- MENUTEMPLATE = MENUTEMPLATEW;
- {$EXTERNALSYM MENUTEMPLATE}
- {$ELSE}
- MENUTEMPLATE = MENUTEMPLATEA;
- {$EXTERNALSYM MENUTEMPLATE}
- {$ENDIF}
- LPMENUTEMPLATEA = PVOID;
- {$EXTERNALSYM LPMENUTEMPLATEA}
- LPMENUTEMPLATEW = PVOID;
- {$EXTERNALSYM LPMENUTEMPLATEW}
- {$IFDEF UNICODE}
- LPMENUTEMPLATE = LPMENUTEMPLATEW;
- {$EXTERNALSYM LPMENUTEMPLATE}
- {$ELSE}
- LPMENUTEMPLATE = LPMENUTEMPLATEA;
- {$EXTERNALSYM LPMENUTEMPLATE}
- {$ENDIF}
- WNDPROC = function (hWnd: HWND; uMsg: UINT; lParam: WPARAM; wParam: LPARAM): LRESULT;
- {$EXTERNALSYM WNDPROC}
- DLGPROC = function (hwndDlg: HWND; wMsg: UINT; wParam: WPARAM; lParam: LPARAM): INT_PTR; stdcall;
- {$EXTERNALSYM DLGPROC}
- TIMERPROC = procedure (hwnd: HWND; uMsg: UINT; idEvent: UINT_PTR; dwTime: DWORD); stdcall;
- {$EXTERNALSYM TIMERPROC}
- GRAYSTRINGPROC = function (hdc: HDC; lpData: LPARAM; cchData: Integer): BOOL; stdcall;
- {$EXTERNALSYM GRAYSTRINGPROC}
- WNDENUMPROC = function (hwnd: HWND; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM WNDENUMPROC}
- HOOKPROC = function (nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM HOOKPROC}
- SENDASYNCPROC = procedure (hwnd: HWND; uMsg: UINT; dwData: ULONG_PTR; lResult: LRESULT); stdcall;
- {$EXTERNALSYM SENDASYNCPROC}
- PROPENUMPROCA = function (hwnd: HWND; lpszString: LPCSTR; hData: HANDLE): BOOL; stdcall;
- {$EXTERNALSYM PROPENUMPROCA}
- PROPENUMPROCW = function (hwnd: HWND; lpszString: LPCWSTR; hData: HANDLE): BOOL; stdcall;
- {$EXTERNALSYM PROPENUMPROCW}
- PROPENUMPROCEXA = function (hwnd: HWND; lpszString: LPSTR; hData: HANDLE; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM PROPENUMPROCEXA}
- PROPENUMPROCEXW = function (hwnd: HWND; lpszString: LPWSTR; hData: HANDLE; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM PROPENUMPROCEXW}
- EDITWORDBREAKPROCA = function (lpch: LPSTR; ichCurrent: Integer; cch, code: Integer): Integer; stdcall;
- {$EXTERNALSYM EDITWORDBREAKPROCA}
- EDITWORDBREAKPROCW = function (lpch: LPWSTR; ichCurrent: Integer; cch, code: Integer): Integer; stdcall;
- {$EXTERNALSYM EDITWORDBREAKPROCW}
- DRAWSTATEPROC = function (hdc: HDC; lData: LPARAM; wData: WPARAM; cx, cy: Integer): BOOL; stdcall;
- {$EXTERNALSYM DRAWSTATEPROC}
- {$IFDEF UNICODE}
- PROPENUMPROC = PROPENUMPROCW;
- {$EXTERNALSYM PROPENUMPROC}
- PROPENUMPROCEX = PROPENUMPROCEXW;
- {$EXTERNALSYM PROPENUMPROCEX}
- EDITWORDBREAKPROC = EDITWORDBREAKPROCW;
- {$EXTERNALSYM EDITWORDBREAKPROC}
- {$ELSE}
- PROPENUMPROC = PROPENUMPROCA;
- {$EXTERNALSYM PROPENUMPROC}
- PROPENUMPROCEX = PROPENUMPROCEXA;
- {$EXTERNALSYM PROPENUMPROCEX}
- EDITWORDBREAKPROC = EDITWORDBREAKPROCA;
- {$EXTERNALSYM EDITWORDBREAKPROC}
- {$ENDIF}
- NAMEENUMPROCA = function (lpstr: LPSTR; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM NAMEENUMPROCA}
- NAMEENUMPROCW = function (lpstr: LPWSTR; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM NAMEENUMPROCW}
- WINSTAENUMPROCA = NAMEENUMPROCA;
- {$EXTERNALSYM WINSTAENUMPROCA}
- DESKTOPENUMPROCA = NAMEENUMPROCA;
- {$EXTERNALSYM DESKTOPENUMPROCA}
- WINSTAENUMPROCW = NAMEENUMPROCW;
- {$EXTERNALSYM WINSTAENUMPROCW}
- DESKTOPENUMPROCW = NAMEENUMPROCW;
- {$EXTERNALSYM DESKTOPENUMPROCW}
- {$IFDEF UNICODE}
- WINSTAENUMPROC = WINSTAENUMPROCW;
- {$EXTERNALSYM WINSTAENUMPROC}
- DESKTOPENUMPROC = DESKTOPENUMPROCW;
- {$EXTERNALSYM DESKTOPENUMPROC}
- {$ELSE}
- WINSTAENUMPROC = WINSTAENUMPROCA;
- {$EXTERNALSYM WINSTAENUMPROC}
- DESKTOPENUMPROC = DESKTOPENUMPROCA;
- {$EXTERNALSYM DESKTOPENUMPROC}
- {$ENDIF}
- function IS_INTRESOURCE(wInteger: WORD): BOOL;
- {$EXTERNALSYM IS_INTRESOURCE}
- type
- MAKEINTRESOURCEA = LPSTR;
- {$EXTERNALSYM MAKEINTRESOURCEA}
- MAKEINTRESOURCEW = LPWSTR;
- {$EXTERNALSYM MAKEINTRESOURCEW}
- {$IFDEF UNICODE}
- MAKEINTRESOURCE = MAKEINTRESOURCEW;
- {$EXTERNALSYM MAKEINTRESOURCE}
- {$ELSE}
- MAKEINTRESOURCE = MAKEINTRESOURCEA;
- {$EXTERNALSYM MAKEINTRESOURCE}
- {$ENDIF}
- //
- // Predefined Resource Types
- //
- const
- RT_CURSOR = MAKEINTRESOURCE(1);
- {$EXTERNALSYM RT_CURSOR}
- RT_BITMAP = MAKEINTRESOURCE(2);
- {$EXTERNALSYM RT_BITMAP}
- RT_ICON = MAKEINTRESOURCE(3);
- {$EXTERNALSYM RT_ICON}
- RT_MENU = MAKEINTRESOURCE(4);
- {$EXTERNALSYM RT_MENU}
- RT_DIALOG = MAKEINTRESOURCE(5);
- {$EXTERNALSYM RT_DIALOG}
- RT_STRING = MAKEINTRESOURCE(6);
- {$EXTERNALSYM RT_STRING}
- RT_FONTDIR = MAKEINTRESOURCE(7);
- {$EXTERNALSYM RT_FONTDIR}
- RT_FONT = MAKEINTRESOURCE(8);
- {$EXTERNALSYM RT_FONT}
- RT_ACCELERATOR = MAKEINTRESOURCE(9);
- {$EXTERNALSYM RT_ACCELERATOR}
- RT_RCDATA = MAKEINTRESOURCE(10);
- {$EXTERNALSYM RT_RCDATA}
- RT_MESSAGETABLE = MAKEINTRESOURCE(11);
- {$EXTERNALSYM RT_MESSAGETABLE}
- DIFFERENCE = 11;
- {$EXTERNALSYM DIFFERENCE}
- RT_GROUP_CURSOR = MAKEINTRESOURCE(ULONG_PTR(RT_CURSOR) + DIFFERENCE);
- {$EXTERNALSYM RT_GROUP_CURSOR}
- RT_GROUP_ICON = MAKEINTRESOURCE(ULONG_PTR(RT_ICON) + DIFFERENCE);
- {$EXTERNALSYM RT_GROUP_ICON}
- RT_VERSION = MAKEINTRESOURCE(16);
- {$EXTERNALSYM RT_VERSION}
- RT_DLGINCLUDE = MAKEINTRESOURCE(17);
- {$EXTERNALSYM RT_DLGINCLUDE}
- RT_PLUGPLAY = MAKEINTRESOURCE(19);
- {$EXTERNALSYM RT_PLUGPLAY}
- RT_VXD = MAKEINTRESOURCE(20);
- {$EXTERNALSYM RT_VXD}
- RT_ANICURSOR = MAKEINTRESOURCE(21);
- {$EXTERNALSYM RT_ANICURSOR}
- RT_ANIICON = MAKEINTRESOURCE(22);
- {$EXTERNALSYM RT_ANIICON}
- RT_HTML = MAKEINTRESOURCE(23);
- {$EXTERNALSYM RT_HTML}
- RT_MANIFEST = MAKEINTRESOURCE(24);
- CREATEPROCESS_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE(1);
- {$EXTERNALSYM CREATEPROCESS_MANIFEST_RESOURCE_ID}
- ISOLATIONAWARE_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE(2);
- {$EXTERNALSYM ISOLATIONAWARE_MANIFEST_RESOURCE_ID}
- ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE(3);
- {$EXTERNALSYM ISOLATIONAWARE_NOSTATICIMPORT_MANIFEST_RESOURCE_ID}
- MINIMUM_RESERVED_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE(1{inclusive});
- {$EXTERNALSYM MINIMUM_RESERVED_MANIFEST_RESOURCE_ID}
- MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID = MAKEINTRESOURCE(16{inclusive});
- {$EXTERNALSYM MAXIMUM_RESERVED_MANIFEST_RESOURCE_ID}
- type
- va_list = PChar;
- {$EXTERNALSYM va_list}
- function wvsprintfA(Output: LPSTR; Format: LPCSTR; arglist: va_list): Integer; stdcall;
- {$EXTERNALSYM wvsprintfA}
- function wvsprintfW(Output: LPWSTR; Format: LPCWSTR; arglist: va_list): Integer; stdcall;
- {$EXTERNALSYM wvsprintfW}
- {$IFDEF UNICODE}
- function wvsprintf(Output: LPWSTR; Format: LPCWSTR; arglist: va_list): Integer; stdcall;
- {$EXTERNALSYM wvsprintf}
- {$ELSE}
- function wvsprintf(Output: LPSTR; Format: LPCSTR; arglist: va_list): Integer; stdcall;
- {$EXTERNALSYM wvsprintf}
- {$ENDIF}
- function wsprintfA(Output: LPSTR; Format: LPCSTR): Integer; stdcall;
- {$EXTERNALSYM wsprintfA}
- function wsprintfW(Output: LPWSTR; Format: LPCWSTR): Integer; stdcall;
- {$EXTERNALSYM wsprintfW}
- {$IFDEF UNICODE}
- function wsprintf(Output: LPWSTR; Format: LPCWSTR): Integer; stdcall;
- {$EXTERNALSYM wsprintf}
- {$ELSE}
- function wsprintf(Output: LPSTR; Format: LPCSTR): Integer; stdcall;
- {$EXTERNALSYM wsprintf}
- {$ENDIF}
- //
- // SPI_SETDESKWALLPAPER defined constants
- //
- const
- SETWALLPAPER_DEFAULT = LPWSTR(-1);
- {$EXTERNALSYM SETWALLPAPER_DEFAULT}
- //
- // Scroll Bar Constants
- //
- SB_HORZ = 0;
- {$EXTERNALSYM SB_HORZ}
- SB_VERT = 1;
- {$EXTERNALSYM SB_VERT}
- SB_CTL = 2;
- {$EXTERNALSYM SB_CTL}
- SB_BOTH = 3;
- {$EXTERNALSYM SB_BOTH}
- //
- // Scroll Bar Commands
- //
- SB_LINEUP = 0;
- {$EXTERNALSYM SB_LINEUP}
- SB_LINELEFT = 0;
- {$EXTERNALSYM SB_LINELEFT}
- SB_LINEDOWN = 1;
- {$EXTERNALSYM SB_LINEDOWN}
- SB_LINERIGHT = 1;
- {$EXTERNALSYM SB_LINERIGHT}
- SB_PAGEUP = 2;
- {$EXTERNALSYM SB_PAGEUP}
- SB_PAGELEFT = 2;
- {$EXTERNALSYM SB_PAGELEFT}
- SB_PAGEDOWN = 3;
- {$EXTERNALSYM SB_PAGEDOWN}
- SB_PAGERIGHT = 3;
- {$EXTERNALSYM SB_PAGERIGHT}
- SB_THUMBPOSITION = 4;
- {$EXTERNALSYM SB_THUMBPOSITION}
- SB_THUMBTRACK = 5;
- {$EXTERNALSYM SB_THUMBTRACK}
- SB_TOP = 6;
- {$EXTERNALSYM SB_TOP}
- SB_LEFT = 6;
- {$EXTERNALSYM SB_LEFT}
- SB_BOTTOM = 7;
- {$EXTERNALSYM SB_BOTTOM}
- SB_RIGHT = 7;
- {$EXTERNALSYM SB_RIGHT}
- SB_ENDSCROLL = 8;
- {$EXTERNALSYM SB_ENDSCROLL}
- //
- // ShowWindow() Commands
- //
- SW_HIDE = 0;
- {$EXTERNALSYM SW_HIDE}
- SW_SHOWNORMAL = 1;
- {$EXTERNALSYM SW_SHOWNORMAL}
- SW_NORMAL = 1;
- {$EXTERNALSYM SW_NORMAL}
- SW_SHOWMINIMIZED = 2;
- {$EXTERNALSYM SW_SHOWMINIMIZED}
- SW_SHOWMAXIMIZED = 3;
- {$EXTERNALSYM SW_SHOWMAXIMIZED}
- SW_MAXIMIZE = 3;
- {$EXTERNALSYM SW_MAXIMIZE}
- SW_SHOWNOACTIVATE = 4;
- {$EXTERNALSYM SW_SHOWNOACTIVATE}
- SW_SHOW = 5;
- {$EXTERNALSYM SW_SHOW}
- SW_MINIMIZE = 6;
- {$EXTERNALSYM SW_MINIMIZE}
- SW_SHOWMINNOACTIVE = 7;
- {$EXTERNALSYM SW_SHOWMINNOACTIVE}
- SW_SHOWNA = 8;
- {$EXTERNALSYM SW_SHOWNA}
- SW_RESTORE = 9;
- {$EXTERNALSYM SW_RESTORE}
- SW_SHOWDEFAULT = 10;
- {$EXTERNALSYM SW_SHOWDEFAULT}
- SW_FORCEMINIMIZE = 11;
- {$EXTERNALSYM SW_FORCEMINIMIZE}
- SW_MAX = 11;
- {$EXTERNALSYM SW_MAX}
- //
- // Old ShowWindow() Commands
- //
- HIDE_WINDOW = 0;
- {$EXTERNALSYM HIDE_WINDOW}
- SHOW_OPENWINDOW = 1;
- {$EXTERNALSYM SHOW_OPENWINDOW}
- SHOW_ICONWINDOW = 2;
- {$EXTERNALSYM SHOW_ICONWINDOW}
- SHOW_FULLSCREEN = 3;
- {$EXTERNALSYM SHOW_FULLSCREEN}
- SHOW_OPENNOACTIVATE = 4;
- {$EXTERNALSYM SHOW_OPENNOACTIVATE}
- //
- // Identifiers for the WM_SHOWWINDOW message
- //
- SW_PARENTCLOSING = 1;
- {$EXTERNALSYM SW_PARENTCLOSING}
- SW_OTHERZOOM = 2;
- {$EXTERNALSYM SW_OTHERZOOM}
- SW_PARENTOPENING = 3;
- {$EXTERNALSYM SW_PARENTOPENING}
- SW_OTHERUNZOOM = 4;
- {$EXTERNALSYM SW_OTHERUNZOOM}
- //
- // AnimateWindow() Commands
- //
- AW_HOR_POSITIVE = $00000001;
- {$EXTERNALSYM AW_HOR_POSITIVE}
- AW_HOR_NEGATIVE = $00000002;
- {$EXTERNALSYM AW_HOR_NEGATIVE}
- AW_VER_POSITIVE = $00000004;
- {$EXTERNALSYM AW_VER_POSITIVE}
- AW_VER_NEGATIVE = $00000008;
- {$EXTERNALSYM AW_VER_NEGATIVE}
- AW_CENTER = $00000010;
- {$EXTERNALSYM AW_CENTER}
- AW_HIDE = $00010000;
- {$EXTERNALSYM AW_HIDE}
- AW_ACTIVATE = $00020000;
- {$EXTERNALSYM AW_ACTIVATE}
- AW_SLIDE = $00040000;
- {$EXTERNALSYM AW_SLIDE}
- AW_BLEND = $00080000;
- {$EXTERNALSYM AW_BLEND}
- //
- // WM_KEYUP/DOWN/CHAR HIWORD(lParam) flags
- //
- KF_EXTENDED = $0100;
- {$EXTERNALSYM KF_EXTENDED}
- KF_DLGMODE = $0800;
- {$EXTERNALSYM KF_DLGMODE}
- KF_MENUMODE = $1000;
- {$EXTERNALSYM KF_MENUMODE}
- KF_ALTDOWN = $2000;
- {$EXTERNALSYM KF_ALTDOWN}
- KF_REPEAT = $4000;
- {$EXTERNALSYM KF_REPEAT}
- KF_UP = $8000;
- {$EXTERNALSYM KF_UP}
- //
- // Virtual Keys, Standard Set
- //
- VK_LBUTTON = $01;
- {$EXTERNALSYM VK_LBUTTON}
- VK_RBUTTON = $02;
- {$EXTERNALSYM VK_RBUTTON}
- VK_CANCEL = $03;
- {$EXTERNALSYM VK_CANCEL}
- VK_MBUTTON = $04; // NOT contiguous with L & RBUTTON
- {$EXTERNALSYM VK_MBUTTON}
- VK_XBUTTON1 = $05; // NOT contiguous with L & RBUTTON
- {$EXTERNALSYM VK_XBUTTON1}
- VK_XBUTTON2 = $06; // NOT contiguous with L & RBUTTON
- {$EXTERNALSYM VK_XBUTTON2}
- //
- // 0x07 : unassigned
- //
- VK_BACK = $08;
- {$EXTERNALSYM VK_BACK}
- VK_TAB = $09;
- {$EXTERNALSYM VK_TAB}
- //
- // 0x0A - 0x0B : reserved
- //
- VK_CLEAR = $0C;
- {$EXTERNALSYM VK_CLEAR}
- VK_RETURN = $0D;
- {$EXTERNALSYM VK_RETURN}
- VK_SHIFT = $10;
- {$EXTERNALSYM VK_SHIFT}
- VK_CONTROL = $11;
- {$EXTERNALSYM VK_CONTROL}
- VK_MENU = $12;
- {$EXTERNALSYM VK_MENU}
- VK_PAUSE = $13;
- {$EXTERNALSYM VK_PAUSE}
- VK_CAPITAL = $14;
- {$EXTERNALSYM VK_CAPITAL}
- VK_KANA = $15;
- {$EXTERNALSYM VK_KANA}
- VK_HANGEUL = $15; // old name - should be here for compatibility
- {$EXTERNALSYM VK_HANGEUL}
- VK_HANGUL = $15;
- {$EXTERNALSYM VK_HANGUL}
- VK_JUNJA = $17;
- {$EXTERNALSYM VK_JUNJA}
- VK_FINAL = $18;
- {$EXTERNALSYM VK_FINAL}
- VK_HANJA = $19;
- {$EXTERNALSYM VK_HANJA}
- VK_KANJI = $19;
- {$EXTERNALSYM VK_KANJI}
- VK_ESCAPE = $1B;
- {$EXTERNALSYM VK_ESCAPE}
- VK_CONVERT = $1C;
- {$EXTERNALSYM VK_CONVERT}
- VK_NONCONVERT = $1D;
- {$EXTERNALSYM VK_NONCONVERT}
- VK_ACCEPT = $1E;
- {$EXTERNALSYM VK_ACCEPT}
- VK_MODECHANGE = $1F;
- {$EXTERNALSYM VK_MODECHANGE}
- VK_SPACE = $20;
- {$EXTERNALSYM VK_SPACE}
- VK_PRIOR = $21;
- {$EXTERNALSYM VK_PRIOR}
- VK_NEXT = $22;
- {$EXTERNALSYM VK_NEXT}
- VK_END = $23;
- {$EXTERNALSYM VK_END}
- VK_HOME = $24;
- {$EXTERNALSYM VK_HOME}
- VK_LEFT = $25;
- {$EXTERNALSYM VK_LEFT}
- VK_UP = $26;
- {$EXTERNALSYM VK_UP}
- VK_RIGHT = $27;
- {$EXTERNALSYM VK_RIGHT}
- VK_DOWN = $28;
- {$EXTERNALSYM VK_DOWN}
- VK_SELECT = $29;
- {$EXTERNALSYM VK_SELECT}
- VK_PRINT = $2A;
- {$EXTERNALSYM VK_PRINT}
- VK_EXECUTE = $2B;
- {$EXTERNALSYM VK_EXECUTE}
- VK_SNAPSHOT = $2C;
- {$EXTERNALSYM VK_SNAPSHOT}
- VK_INSERT = $2D;
- {$EXTERNALSYM VK_INSERT}
- VK_DELETE = $2E;
- {$EXTERNALSYM VK_DELETE}
- VK_HELP = $2F;
- {$EXTERNALSYM VK_HELP}
- //
- // VK_0 - VK_9 are the same as ASCII '0' - '9' (0x30 - 0x39)
- // 0x40 : unassigned
- // VK_A - VK_Z are the same as ASCII 'A' - 'Z' (0x41 - 0x5A)
- //
- VK_LWIN = $5B;
- {$EXTERNALSYM VK_LWIN}
- VK_RWIN = $5C;
- {$EXTERNALSYM VK_RWIN}
- VK_APPS = $5D;
- {$EXTERNALSYM VK_APPS}
- //
- // 0x5E : reserved
- //
- VK_SLEEP = $5F;
- {$EXTERNALSYM VK_SLEEP}
- VK_NUMPAD0 = $60;
- {$EXTERNALSYM VK_NUMPAD0}
- VK_NUMPAD1 = $61;
- {$EXTERNALSYM VK_NUMPAD1}
- VK_NUMPAD2 = $62;
- {$EXTERNALSYM VK_NUMPAD2}
- VK_NUMPAD3 = $63;
- {$EXTERNALSYM VK_NUMPAD3}
- VK_NUMPAD4 = $64;
- {$EXTERNALSYM VK_NUMPAD4}
- VK_NUMPAD5 = $65;
- {$EXTERNALSYM VK_NUMPAD5}
- VK_NUMPAD6 = $66;
- {$EXTERNALSYM VK_NUMPAD6}
- VK_NUMPAD7 = $67;
- {$EXTERNALSYM VK_NUMPAD7}
- VK_NUMPAD8 = $68;
- {$EXTERNALSYM VK_NUMPAD8}
- VK_NUMPAD9 = $69;
- {$EXTERNALSYM VK_NUMPAD9}
- VK_MULTIPLY = $6A;
- {$EXTERNALSYM VK_MULTIPLY}
- VK_ADD = $6B;
- {$EXTERNALSYM VK_ADD}
- VK_SEPARATOR = $6C;
- {$EXTERNALSYM VK_SEPARATOR}
- VK_SUBTRACT = $6D;
- {$EXTERNALSYM VK_SUBTRACT}
- VK_DECIMAL = $6E;
- {$EXTERNALSYM VK_DECIMAL}
- VK_DIVIDE = $6F;
- {$EXTERNALSYM VK_DIVIDE}
- VK_F1 = $70;
- {$EXTERNALSYM VK_F1}
- VK_F2 = $71;
- {$EXTERNALSYM VK_F2}
- VK_F3 = $72;
- {$EXTERNALSYM VK_F3}
- VK_F4 = $73;
- {$EXTERNALSYM VK_F4}
- VK_F5 = $74;
- {$EXTERNALSYM VK_F5}
- VK_F6 = $75;
- {$EXTERNALSYM VK_F6}
- VK_F7 = $76;
- {$EXTERNALSYM VK_F7}
- VK_F8 = $77;
- {$EXTERNALSYM VK_F8}
- VK_F9 = $78;
- {$EXTERNALSYM VK_F9}
- VK_F10 = $79;
- {$EXTERNALSYM VK_F10}
- VK_F11 = $7A;
- {$EXTERNALSYM VK_F11}
- VK_F12 = $7B;
- {$EXTERNALSYM VK_F12}
- VK_F13 = $7C;
- {$EXTERNALSYM VK_F13}
- VK_F14 = $7D;
- {$EXTERNALSYM VK_F14}
- VK_F15 = $7E;
- {$EXTERNALSYM VK_F15}
- VK_F16 = $7F;
- {$EXTERNALSYM VK_F16}
- VK_F17 = $80;
- {$EXTERNALSYM VK_F17}
- VK_F18 = $81;
- {$EXTERNALSYM VK_F18}
- VK_F19 = $82;
- {$EXTERNALSYM VK_F19}
- VK_F20 = $83;
- {$EXTERNALSYM VK_F20}
- VK_F21 = $84;
- {$EXTERNALSYM VK_F21}
- VK_F22 = $85;
- {$EXTERNALSYM VK_F22}
- VK_F23 = $86;
- {$EXTERNALSYM VK_F23}
- VK_F24 = $87;
- {$EXTERNALSYM VK_F24}
- //
- // 0x88 - 0x8F : unassigned
- //
- VK_NUMLOCK = $90;
- {$EXTERNALSYM VK_NUMLOCK}
- VK_SCROLL = $91;
- {$EXTERNALSYM VK_SCROLL}
- //
- // NEC PC-9800 kbd definitions
- //
- VK_OEM_NEC_EQUAL = $92; // '=' key on numpad
- {$EXTERNALSYM VK_OEM_NEC_EQUAL}
- //
- // Fujitsu/OASYS kbd definitions
- //
- VK_OEM_FJ_JISHO = $92; // 'Dictionary' key
- {$EXTERNALSYM VK_OEM_FJ_JISHO}
- VK_OEM_FJ_MASSHOU = $93; // 'Unregister word' key
- {$EXTERNALSYM VK_OEM_FJ_MASSHOU}
- VK_OEM_FJ_TOUROKU = $94; // 'Register word' key
- {$EXTERNALSYM VK_OEM_FJ_TOUROKU}
- VK_OEM_FJ_LOYA = $95; // 'Left OYAYUBI' key
- {$EXTERNALSYM VK_OEM_FJ_LOYA}
- VK_OEM_FJ_ROYA = $96; // 'Right OYAYUBI' key
- {$EXTERNALSYM VK_OEM_FJ_ROYA}
- //
- // 0x97 - 0x9F : unassigned
- //
- //
- // VK_L* & VK_R* - left and right Alt, Ctrl and Shift virtual keys.
- // Used only as parameters to GetAsyncKeyState() and GetKeyState().
- // No other API or message will distinguish left and right keys in this way.
- //
- VK_LSHIFT = $A0;
- {$EXTERNALSYM VK_LSHIFT}
- VK_RSHIFT = $A1;
- {$EXTERNALSYM VK_RSHIFT}
- VK_LCONTROL = $A2;
- {$EXTERNALSYM VK_LCONTROL}
- VK_RCONTROL = $A3;
- {$EXTERNALSYM VK_RCONTROL}
- VK_LMENU = $A4;
- {$EXTERNALSYM VK_LMENU}
- VK_RMENU = $A5;
- {$EXTERNALSYM VK_RMENU}
- VK_BROWSER_BACK = $A6;
- {$EXTERNALSYM VK_BROWSER_BACK}
- VK_BROWSER_FORWARD = $A7;
- {$EXTERNALSYM VK_BROWSER_FORWARD}
- VK_BROWSER_REFRESH = $A8;
- {$EXTERNALSYM VK_BROWSER_REFRESH}
- VK_BROWSER_STOP = $A9;
- {$EXTERNALSYM VK_BROWSER_STOP}
- VK_BROWSER_SEARCH = $AA;
- {$EXTERNALSYM VK_BROWSER_SEARCH}
- VK_BROWSER_FAVORITES = $AB;
- {$EXTERNALSYM VK_BROWSER_FAVORITES}
- VK_BROWSER_HOME = $AC;
- {$EXTERNALSYM VK_BROWSER_HOME}
- VK_VOLUME_MUTE = $AD;
- {$EXTERNALSYM VK_VOLUME_MUTE}
- VK_VOLUME_DOWN = $AE;
- {$EXTERNALSYM VK_VOLUME_DOWN}
- VK_VOLUME_UP = $AF;
- {$EXTERNALSYM VK_VOLUME_UP}
- VK_MEDIA_NEXT_TRACK = $B0;
- {$EXTERNALSYM VK_MEDIA_NEXT_TRACK}
- VK_MEDIA_PREV_TRACK = $B1;
- {$EXTERNALSYM VK_MEDIA_PREV_TRACK}
- VK_MEDIA_STOP = $B2;
- {$EXTERNALSYM VK_MEDIA_STOP}
- VK_MEDIA_PLAY_PAUSE = $B3;
- {$EXTERNALSYM VK_MEDIA_PLAY_PAUSE}
- VK_LAUNCH_MAIL = $B4;
- {$EXTERNALSYM VK_LAUNCH_MAIL}
- VK_LAUNCH_MEDIA_SELECT = $B5;
- {$EXTERNALSYM VK_LAUNCH_MEDIA_SELECT}
- VK_LAUNCH_APP1 = $B6;
- {$EXTERNALSYM VK_LAUNCH_APP1}
- VK_LAUNCH_APP2 = $B7;
- {$EXTERNALSYM VK_LAUNCH_APP2}
- //
- // 0xB8 - 0xB9 : reserved
- //
- VK_OEM_1 = $BA; // ';:' for US
- {$EXTERNALSYM VK_OEM_1}
- VK_OEM_PLUS = $BB; // '+' any country
- {$EXTERNALSYM VK_OEM_PLUS}
- VK_OEM_COMMA = $BC; // ',' any country
- {$EXTERNALSYM VK_OEM_COMMA}
- VK_OEM_MINUS = $BD; // '-' any country
- {$EXTERNALSYM VK_OEM_MINUS}
- VK_OEM_PERIOD = $BE; // '.' any country
- {$EXTERNALSYM VK_OEM_PERIOD}
- VK_OEM_2 = $BF; // '/?' for US
- {$EXTERNALSYM VK_OEM_2}
- VK_OEM_3 = $C0; // '`~' for US
- {$EXTERNALSYM VK_OEM_3}
- //
- // 0xC1 - 0xD7 : reserved
- //
- //
- // 0xD8 - 0xDA : unassigned
- //
- VK_OEM_4 = $DB; // '[{' for US
- {$EXTERNALSYM VK_OEM_4}
- VK_OEM_5 = $DC; // '|' for US
- {$EXTERNALSYM VK_OEM_5}
- VK_OEM_6 = $DD; // ']}' for US
- {$EXTERNALSYM VK_OEM_6}
- VK_OEM_7 = $DE; // ''"' for US
- {$EXTERNALSYM VK_OEM_7}
- VK_OEM_8 = $DF;
- {$EXTERNALSYM VK_OEM_8}
- //
- // 0xE0 : reserved
- //
- //
- // Various extended or enhanced keyboards
- //
- VK_OEM_AX = $E1; // 'AX' key on Japanese AX kbd
- {$EXTERNALSYM VK_OEM_AX}
- VK_OEM_102 = $E2; // "<>" or "|" on RT 102-key kbd.
- {$EXTERNALSYM VK_OEM_102}
- VK_ICO_HELP = $E3; // Help key on ICO
- {$EXTERNALSYM VK_ICO_HELP}
- VK_ICO_00 = $E4; // 00 key on ICO
- {$EXTERNALSYM VK_ICO_00}
- VK_PROCESSKEY = $E5;
- {$EXTERNALSYM VK_PROCESSKEY}
- VK_ICO_CLEAR = $E6;
- {$EXTERNALSYM VK_ICO_CLEAR}
- VK_PACKET = $E7;
- {$EXTERNALSYM VK_PACKET}
- //
- // 0xE8 : unassigned
- //
- //
- // Nokia/Ericsson definitions
- //
- VK_OEM_RESET = $E9;
- {$EXTERNALSYM VK_OEM_RESET}
- VK_OEM_JUMP = $EA;
- {$EXTERNALSYM VK_OEM_JUMP}
- VK_OEM_PA1 = $EB;
- {$EXTERNALSYM VK_OEM_PA1}
- VK_OEM_PA2 = $EC;
- {$EXTERNALSYM VK_OEM_PA2}
- VK_OEM_PA3 = $ED;
- {$EXTERNALSYM VK_OEM_PA3}
- VK_OEM_WSCTRL = $EE;
- {$EXTERNALSYM VK_OEM_WSCTRL}
- VK_OEM_CUSEL = $EF;
- {$EXTERNALSYM VK_OEM_CUSEL}
- VK_OEM_ATTN = $F0;
- {$EXTERNALSYM VK_OEM_ATTN}
- VK_OEM_FINISH = $F1;
- {$EXTERNALSYM VK_OEM_FINISH}
- VK_OEM_COPY = $F2;
- {$EXTERNALSYM VK_OEM_COPY}
- VK_OEM_AUTO = $F3;
- {$EXTERNALSYM VK_OEM_AUTO}
- VK_OEM_ENLW = $F4;
- {$EXTERNALSYM VK_OEM_ENLW}
- VK_OEM_BACKTAB = $F5;
- {$EXTERNALSYM VK_OEM_BACKTAB}
- VK_ATTN = $F6;
- {$EXTERNALSYM VK_ATTN}
- VK_CRSEL = $F7;
- {$EXTERNALSYM VK_CRSEL}
- VK_EXSEL = $F8;
- {$EXTERNALSYM VK_EXSEL}
- VK_EREOF = $F9;
- {$EXTERNALSYM VK_EREOF}
- VK_PLAY = $FA;
- {$EXTERNALSYM VK_PLAY}
- VK_ZOOM = $FB;
- {$EXTERNALSYM VK_ZOOM}
- VK_NONAME = $FC;
- {$EXTERNALSYM VK_NONAME}
- VK_PA1 = $FD;
- {$EXTERNALSYM VK_PA1}
- VK_OEM_CLEAR = $FE;
- {$EXTERNALSYM VK_OEM_CLEAR}
- //
- // 0xFF : reserved
- //
- //
- // SetWindowsHook() codes
- //
- WH_MIN = DWORD(-1);
- {$EXTERNALSYM WH_MIN}
- WH_MSGFILTER = DWORD(-1);
- {$EXTERNALSYM WH_MSGFILTER}
- WH_JOURNALRECORD = 0;
- {$EXTERNALSYM WH_JOURNALRECORD}
- WH_JOURNALPLAYBACK = 1;
- {$EXTERNALSYM WH_JOURNALPLAYBACK}
- WH_KEYBOARD = 2;
- {$EXTERNALSYM WH_KEYBOARD}
- WH_GETMESSAGE = 3;
- {$EXTERNALSYM WH_GETMESSAGE}
- WH_CALLWNDPROC = 4;
- {$EXTERNALSYM WH_CALLWNDPROC}
- WH_CBT = 5;
- {$EXTERNALSYM WH_CBT}
- WH_SYSMSGFILTER = 6;
- {$EXTERNALSYM WH_SYSMSGFILTER}
- WH_MOUSE = 7;
- {$EXTERNALSYM WH_MOUSE}
- WH_HARDWARE = 8;
- {$EXTERNALSYM WH_HARDWARE}
- WH_DEBUG = 9;
- {$EXTERNALSYM WH_DEBUG}
- WH_SHELL = 10;
- {$EXTERNALSYM WH_SHELL}
- WH_FOREGROUNDIDLE = 11;
- {$EXTERNALSYM WH_FOREGROUNDIDLE}
- WH_CALLWNDPROCRET = 12;
- {$EXTERNALSYM WH_CALLWNDPROCRET}
- WH_KEYBOARD_LL = 13;
- {$EXTERNALSYM WH_KEYBOARD_LL}
- WH_MOUSE_LL = 14;
- {$EXTERNALSYM WH_MOUSE_LL}
- {$IFDEF WINVER_0400_UP}
- {$IFDEF WINNT_0400_UP}
- WH_MAX = 14;
- {$EXTERNALSYM WH_MAX}
- {$ELSE}
- WH_MAX = 12;
- {$EXTERNALSYM WH_MAX}
- {$ENDIF}
- {$ELSE}
- WH_MAX = 11;
- {$EXTERNALSYM WH_MAX}
- {$ENDIF}
- WH_MINHOOK = WH_MIN;
- {$EXTERNALSYM WH_MINHOOK}
- WH_MAXHOOK = WH_MAX;
- {$EXTERNALSYM WH_MAXHOOK}
- //
- // Hook Codes
- //
- HC_ACTION = 0;
- {$EXTERNALSYM HC_ACTION}
- HC_GETNEXT = 1;
- {$EXTERNALSYM HC_GETNEXT}
- HC_SKIP = 2;
- {$EXTERNALSYM HC_SKIP}
- HC_NOREMOVE = 3;
- {$EXTERNALSYM HC_NOREMOVE}
- HC_NOREM = HC_NOREMOVE;
- {$EXTERNALSYM HC_NOREM}
- HC_SYSMODALON = 4;
- {$EXTERNALSYM HC_SYSMODALON}
- HC_SYSMODALOFF = 5;
- {$EXTERNALSYM HC_SYSMODALOFF}
- //
- // CBT Hook Codes
- //
- HCBT_MOVESIZE = 0;
- {$EXTERNALSYM HCBT_MOVESIZE}
- HCBT_MINMAX = 1;
- {$EXTERNALSYM HCBT_MINMAX}
- HCBT_QS = 2;
- {$EXTERNALSYM HCBT_QS}
- HCBT_CREATEWND = 3;
- {$EXTERNALSYM HCBT_CREATEWND}
- HCBT_DESTROYWND = 4;
- {$EXTERNALSYM HCBT_DESTROYWND}
- HCBT_ACTIVATE = 5;
- {$EXTERNALSYM HCBT_ACTIVATE}
- HCBT_CLICKSKIPPED = 6;
- {$EXTERNALSYM HCBT_CLICKSKIPPED}
- HCBT_KEYSKIPPED = 7;
- {$EXTERNALSYM HCBT_KEYSKIPPED}
- HCBT_SYSCOMMAND = 8;
- {$EXTERNALSYM HCBT_SYSCOMMAND}
- HCBT_SETFOCUS = 9;
- {$EXTERNALSYM HCBT_SETFOCUS}
- //
- // HCBT_ACTIVATE structure pointed to by lParam
- //
- type
- LPCBTACTIVATESTRUCT = ^CBTACTIVATESTRUCT;
- {$EXTERNALSYM LPCBTACTIVATESTRUCT}
- tagCBTACTIVATESTRUCT = record
- fMouse: BOOL;
- hWndActive: HWND;
- end;
- {$EXTERNALSYM tagCBTACTIVATESTRUCT}
- CBTACTIVATESTRUCT = tagCBTACTIVATESTRUCT;
- {$EXTERNALSYM CBTACTIVATESTRUCT}
- TCbtActivateStruct = CBTACTIVATESTRUCT;
- PCbtActivateStruct = LPCBTACTIVATESTRUCT;
- //
- // WTSSESSION_NOTIFICATION struct pointed by lParam, for WM_WTSSESSION_CHANGE
- //
- tagWTSSESSION_NOTIFICATION = record
- cbSize: DWORD;
- dwSessionId: DWORD;
- end;
- {$EXTERNALSYM tagWTSSESSION_NOTIFICATION}
- WTSSESSION_NOTIFICATION = tagWTSSESSION_NOTIFICATION;
- {$EXTERNALSYM WTSSESSION_NOTIFICATION}
- PWTSSESSION_NOTIFICATION = ^WTSSESSION_NOTIFICATION;
- {$EXTERNALSYM PWTSSESSION_NOTIFICATION}
- TWtsSessionNotification = WTSSESSION_NOTIFICATION;
- PWtsSessionNotification = PWTSSESSION_NOTIFICATION;
- //
- // codes passed in WPARAM for WM_WTSSESSION_CHANGE
- //
- const
- WTS_CONSOLE_CONNECT = $1;
- {$EXTERNALSYM WTS_CONSOLE_CONNECT}
- WTS_CONSOLE_DISCONNECT = $2;
- {$EXTERNALSYM WTS_CONSOLE_DISCONNECT}
- WTS_REMOTE_CONNECT = $3;
- {$EXTERNALSYM WTS_REMOTE_CONNECT}
- WTS_REMOTE_DISCONNECT = $4;
- {$EXTERNALSYM WTS_REMOTE_DISCONNECT}
- WTS_SESSION_LOGON = $5;
- {$EXTERNALSYM WTS_SESSION_LOGON}
- WTS_SESSION_LOGOFF = $6;
- {$EXTERNALSYM WTS_SESSION_LOGOFF}
- WTS_SESSION_LOCK = $7;
- {$EXTERNALSYM WTS_SESSION_LOCK}
- WTS_SESSION_UNLOCK = $8;
- {$EXTERNALSYM WTS_SESSION_UNLOCK}
- WTS_SESSION_REMOTE_CONTROL = $9;
- {$EXTERNALSYM WTS_SESSION_REMOTE_CONTROL}
- //
- // WH_MSGFILTER Filter Proc Codes
- //
- const
- MSGF_DIALOGBOX = 0;
- {$EXTERNALSYM MSGF_DIALOGBOX}
- MSGF_MESSAGEBOX = 1;
- {$EXTERNALSYM MSGF_MESSAGEBOX}
- MSGF_MENU = 2;
- {$EXTERNALSYM MSGF_MENU}
- MSGF_SCROLLBAR = 5;
- {$EXTERNALSYM MSGF_SCROLLBAR}
- MSGF_NEXTWINDOW = 6;
- {$EXTERNALSYM MSGF_NEXTWINDOW}
- MSGF_MAX = 8; // unused
- {$EXTERNALSYM MSGF_MAX}
- MSGF_USER = 4096;
- {$EXTERNALSYM MSGF_USER}
- //
- // Shell support
- //
- HSHELL_WINDOWCREATED = 1;
- {$EXTERNALSYM HSHELL_WINDOWCREATED}
- HSHELL_WINDOWDESTROYED = 2;
- {$EXTERNALSYM HSHELL_WINDOWDESTROYED}
- HSHELL_ACTIVATESHELLWINDOW = 3;
- {$EXTERNALSYM HSHELL_ACTIVATESHELLWINDOW}
- HSHELL_WINDOWACTIVATED = 4;
- {$EXTERNALSYM HSHELL_WINDOWACTIVATED}
- HSHELL_GETMINRECT = 5;
- {$EXTERNALSYM HSHELL_GETMINRECT}
- HSHELL_REDRAW = 6;
- {$EXTERNALSYM HSHELL_REDRAW}
- HSHELL_TASKMAN = 7;
- {$EXTERNALSYM HSHELL_TASKMAN}
- HSHELL_LANGUAGE = 8;
- {$EXTERNALSYM HSHELL_LANGUAGE}
- HSHELL_ACCESSIBILITYSTATE = 11;
- {$EXTERNALSYM HSHELL_ACCESSIBILITYSTATE}
- HSHELL_APPCOMMAND = 12;
- {$EXTERNALSYM HSHELL_APPCOMMAND}
- HSHELL_WINDOWREPLACED = 13;
- {$EXTERNALSYM HSHELL_WINDOWREPLACED}
- // wparam for HSHELL_ACCESSIBILITYSTATE//
- ACCESS_STICKYKEYS = $0001;
- {$EXTERNALSYM ACCESS_STICKYKEYS}
- ACCESS_FILTERKEYS = $0002;
- {$EXTERNALSYM ACCESS_FILTERKEYS}
- ACCESS_MOUSEKEYS = $0003;
- {$EXTERNALSYM ACCESS_MOUSEKEYS}
- // cmd for HSHELL_APPCOMMAND and WM_APPCOMMAND//
- APPCOMMAND_BROWSER_BACKWARD = 1;
- {$EXTERNALSYM APPCOMMAND_BROWSER_BACKWARD}
- APPCOMMAND_BROWSER_FORWARD = 2;
- {$EXTERNALSYM APPCOMMAND_BROWSER_FORWARD}
- APPCOMMAND_BROWSER_REFRESH = 3;
- {$EXTERNALSYM APPCOMMAND_BROWSER_REFRESH}
- APPCOMMAND_BROWSER_STOP = 4;
- {$EXTERNALSYM APPCOMMAND_BROWSER_STOP}
- APPCOMMAND_BROWSER_SEARCH = 5;
- {$EXTERNALSYM APPCOMMAND_BROWSER_SEARCH}
- APPCOMMAND_BROWSER_FAVORITES = 6;
- {$EXTERNALSYM APPCOMMAND_BROWSER_FAVORITES}
- APPCOMMAND_BROWSER_HOME = 7;
- {$EXTERNALSYM APPCOMMAND_BROWSER_HOME}
- APPCOMMAND_VOLUME_MUTE = 8;
- {$EXTERNALSYM APPCOMMAND_VOLUME_MUTE}
- APPCOMMAND_VOLUME_DOWN = 9;
- {$EXTERNALSYM APPCOMMAND_VOLUME_DOWN}
- APPCOMMAND_VOLUME_UP = 10;
- {$EXTERNALSYM APPCOMMAND_VOLUME_UP}
- APPCOMMAND_MEDIA_NEXTTRACK = 11;
- {$EXTERNALSYM APPCOMMAND_MEDIA_NEXTTRACK}
- APPCOMMAND_MEDIA_PREVIOUSTRACK = 12;
- {$EXTERNALSYM APPCOMMAND_MEDIA_PREVIOUSTRACK}
- APPCOMMAND_MEDIA_STOP = 13;
- {$EXTERNALSYM APPCOMMAND_MEDIA_STOP}
- APPCOMMAND_MEDIA_PLAY_PAUSE = 14;
- {$EXTERNALSYM APPCOMMAND_MEDIA_PLAY_PAUSE}
- APPCOMMAND_LAUNCH_MAIL = 15;
- {$EXTERNALSYM APPCOMMAND_LAUNCH_MAIL}
- APPCOMMAND_LAUNCH_MEDIA_SELECT = 16;
- {$EXTERNALSYM APPCOMMAND_LAUNCH_MEDIA_SELECT}
- APPCOMMAND_LAUNCH_APP1 = 17;
- {$EXTERNALSYM APPCOMMAND_LAUNCH_APP1}
- APPCOMMAND_LAUNCH_APP2 = 18;
- {$EXTERNALSYM APPCOMMAND_LAUNCH_APP2}
- APPCOMMAND_BASS_DOWN = 19;
- {$EXTERNALSYM APPCOMMAND_BASS_DOWN}
- APPCOMMAND_BASS_BOOST = 20;
- {$EXTERNALSYM APPCOMMAND_BASS_BOOST}
- APPCOMMAND_BASS_UP = 21;
- {$EXTERNALSYM APPCOMMAND_BASS_UP}
- APPCOMMAND_TREBLE_DOWN = 22;
- {$EXTERNALSYM APPCOMMAND_TREBLE_DOWN}
- APPCOMMAND_TREBLE_UP = 23;
- {$EXTERNALSYM APPCOMMAND_TREBLE_UP}
- APPCOMMAND_MICROPHONE_VOLUME_MUTE = 24;
- {$EXTERNALSYM APPCOMMAND_MICROPHONE_VOLUME_MUTE}
- APPCOMMAND_MICROPHONE_VOLUME_DOWN = 25;
- {$EXTERNALSYM APPCOMMAND_MICROPHONE_VOLUME_DOWN}
- APPCOMMAND_MICROPHONE_VOLUME_UP = 26;
- {$EXTERNALSYM APPCOMMAND_MICROPHONE_VOLUME_UP}
- APPCOMMAND_HELP = 27;
- {$EXTERNALSYM APPCOMMAND_HELP}
- APPCOMMAND_FIND = 28;
- {$EXTERNALSYM APPCOMMAND_FIND}
- APPCOMMAND_NEW = 29;
- {$EXTERNALSYM APPCOMMAND_NEW}
- APPCOMMAND_OPEN = 30;
- {$EXTERNALSYM APPCOMMAND_OPEN}
- APPCOMMAND_CLOSE = 31;
- {$EXTERNALSYM APPCOMMAND_CLOSE}
- APPCOMMAND_SAVE = 32;
- {$EXTERNALSYM APPCOMMAND_SAVE}
- APPCOMMAND_PRINT = 33;
- {$EXTERNALSYM APPCOMMAND_PRINT}
- APPCOMMAND_UNDO = 34;
- {$EXTERNALSYM APPCOMMAND_UNDO}
- APPCOMMAND_REDO = 35;
- {$EXTERNALSYM APPCOMMAND_REDO}
- APPCOMMAND_COPY = 36;
- {$EXTERNALSYM APPCOMMAND_COPY}
- APPCOMMAND_CUT = 37;
- {$EXTERNALSYM APPCOMMAND_CUT}
- APPCOMMAND_PASTE = 38;
- {$EXTERNALSYM APPCOMMAND_PASTE}
- APPCOMMAND_REPLY_TO_MAIL = 39;
- {$EXTERNALSYM APPCOMMAND_REPLY_TO_MAIL}
- APPCOMMAND_FORWARD_MAIL = 40;
- {$EXTERNALSYM APPCOMMAND_FORWARD_MAIL}
- APPCOMMAND_SEND_MAIL = 41;
- {$EXTERNALSYM APPCOMMAND_SEND_MAIL}
- APPCOMMAND_SPELL_CHECK = 42;
- {$EXTERNALSYM APPCOMMAND_SPELL_CHECK}
- APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE = 43;
- {$EXTERNALSYM APPCOMMAND_DICTATE_OR_COMMAND_CONTROL_TOGGLE}
- APPCOMMAND_MIC_ON_OFF_TOGGLE = 44;
- {$EXTERNALSYM APPCOMMAND_MIC_ON_OFF_TOGGLE}
- APPCOMMAND_CORRECTION_LIST = 45;
- {$EXTERNALSYM APPCOMMAND_CORRECTION_LIST}
- APPCOMMAND_MEDIA_PLAY = 46;
- {$EXTERNALSYM APPCOMMAND_MEDIA_PLAY}
- APPCOMMAND_MEDIA_PAUSE = 47;
- {$EXTERNALSYM APPCOMMAND_MEDIA_PAUSE}
- APPCOMMAND_MEDIA_RECORD = 48;
- {$EXTERNALSYM APPCOMMAND_MEDIA_RECORD}
- APPCOMMAND_MEDIA_FAST_FORWARD = 49;
- {$EXTERNALSYM APPCOMMAND_MEDIA_FAST_FORWARD}
- APPCOMMAND_MEDIA_REWIND = 50;
- {$EXTERNALSYM APPCOMMAND_MEDIA_REWIND}
- APPCOMMAND_MEDIA_CHANNEL_UP = 51;
- {$EXTERNALSYM APPCOMMAND_MEDIA_CHANNEL_UP}
- APPCOMMAND_MEDIA_CHANNEL_DOWN = 52;
- {$EXTERNALSYM APPCOMMAND_MEDIA_CHANNEL_DOWN}
- FAPPCOMMAND_MOUSE = $8000;
- {$EXTERNALSYM FAPPCOMMAND_MOUSE}
- FAPPCOMMAND_KEY = 0;
- {$EXTERNALSYM FAPPCOMMAND_KEY}
- FAPPCOMMAND_OEM = $1000;
- {$EXTERNALSYM FAPPCOMMAND_OEM}
- FAPPCOMMAND_MASK = $F000;
- {$EXTERNALSYM FAPPCOMMAND_MASK}
- function GET_APPCOMMAND_LPARAM(lParam: LPARAM): Shortint;
- {$EXTERNALSYM GET_APPCOMMAND_LPARAM}
- function GET_DEVICE_LPARAM(lParam: LPARAM): WORD;
- {$EXTERNALSYM GET_DEVICE_LPARAM}
- function GET_MOUSEORKEY_LPARAM(lParam: LPARAM): WORD;
- {$EXTERNALSYM GET_MOUSEORKEY_LPARAM}
- function GET_FLAGS_LPARAM(lParam: LPARAM): Integer;
- {$EXTERNALSYM GET_FLAGS_LPARAM}
- function GET_KEYSTATE_LPARAM(lParam: LPARAM): Integer;
- {$EXTERNALSYM GET_KEYSTATE_LPARAM}
- //
- // Message Structure used in Journaling
- //
- type
- LPEVENTMSG = ^EVENTMSG;
- {$EXTERNALSYM LPEVENTMSG}
- tagEVENTMSG = record
- message_: UINT;
- paramL: UINT;
- paramH: UINT;
- time: DWORD;
- hwnd: HWND;
- end;
- {$EXTERNALSYM tagEVENTMSG}
- EVENTMSG = tagEVENTMSG;
- {$EXTERNALSYM EVENTMSG}
- LPEVENTMSGMSG = ^EVENTMSG;
- {$EXTERNALSYM LPEVENTMSGMSG}
- PEVENTMSGMSG = ^EVENTMSG;
- {$EXTERNALSYM PEVENTMSGMSG}
- NPEVENTMSG = ^EVENTMSG;
- {$EXTERNALSYM NPEVENTMSG}
- NPEVENTMSGMSG = ^EVENTMSG;
- {$EXTERNALSYM NPEVENTMSGMSG}
- TEventMsg = EVENTMSG;
- PEventMsg = LPEVENTMSG;
- //
- // Message structure used by WH_CALLWNDPROC
- //
- LPCWPSTRUCT = ^CWPSTRUCT;
- {$EXTERNALSYM LPCWPSTRUCT}
- tagCWPSTRUCT = record
- lParam: LPARAM;
- wParam: WPARAM;
- message: UINT;
- hwnd: HWND;
- end;
- {$EXTERNALSYM tagCWPSTRUCT}
- CWPSTRUCT = tagCWPSTRUCT;
- {$EXTERNALSYM CWPSTRUCT}
- NPCWPSTRUCT = ^CWPSTRUCT;
- {$EXTERNALSYM NPCWPSTRUCT}
- TCwpStruct = CWPSTRUCT;
- PCwpStruct = LPCWPSTRUCT;
- //
- // Message structure used by WH_CALLWNDPROCRET
- //
- LPCWPRETSTRUCT = ^CWPRETSTRUCT;
- {$EXTERNALSYM LPCWPRETSTRUCT}
- tagCWPRETSTRUCT = record
- lResult: LRESULT;
- lParam: LPARAM;
- wParam: WPARAM;
- message: UINT;
- hwnd: HWND;
- end;
- {$EXTERNALSYM tagCWPRETSTRUCT}
- CWPRETSTRUCT = tagCWPRETSTRUCT;
- {$EXTERNALSYM CWPRETSTRUCT}
- NPCWPRETSTRUCT = ^CWPRETSTRUCT;
- {$EXTERNALSYM NPCWPRETSTRUCT}
- TCwpRetStruct = CWPRETSTRUCT;
- PCwpRetStruct = LPCWPRETSTRUCT;
- //
- // Low level hook flags
- //
- const
- LLKHF_EXTENDED = (KF_EXTENDED shr 8);
- {$EXTERNALSYM LLKHF_EXTENDED}
- LLKHF_INJECTED = $00000010;
- {$EXTERNALSYM LLKHF_INJECTED}
- LLKHF_ALTDOWN = (KF_ALTDOWN shr 8);
- {$EXTERNALSYM LLKHF_ALTDOWN}
- LLKHF_UP = (KF_UP shr 8);
- {$EXTERNALSYM LLKHF_UP}
- LLMHF_INJECTED = $00000001;
- {$EXTERNALSYM LLMHF_INJECTED}
- //
- // Structure used by WH_KEYBOARD_LL
- //
- type
- LPKBDLLHOOKSTRUCT = ^KBDLLHOOKSTRUCT;
- {$EXTERNALSYM LPKBDLLHOOKSTRUCT}
- tagKBDLLHOOKSTRUCT = record
- vkCode: DWORD;
- scanCode: DWORD;
- flags: DWORD;
- time: DWORD;
- dwExtraInfo: ULONG_PTR;
- end;
- {$EXTERNALSYM tagKBDLLHOOKSTRUCT}
- KBDLLHOOKSTRUCT = tagKBDLLHOOKSTRUCT;
- {$EXTERNALSYM KBDLLHOOKSTRUCT}
- TKbDllHookStruct = KBDLLHOOKSTRUCT;
- PKbDllHookStruct = LPKBDLLHOOKSTRUCT;
- //
- // Structure used by WH_MOUSE_LL
- //
- LPMSLLHOOKSTRUCT = ^MSLLHOOKSTRUCT;
- {$EXTERNALSYM LPMSLLHOOKSTRUCT}
- tagMSLLHOOKSTRUCT = record
- pt: POINT;
- mouseData: DWORD;
- flags: DWORD;
- time: DWORD;
- dwExtraInfo: ULONG_PTR;
- end;
- {$EXTERNALSYM tagMSLLHOOKSTRUCT}
- MSLLHOOKSTRUCT = tagMSLLHOOKSTRUCT;
- {$EXTERNALSYM MSLLHOOKSTRUCT}
- TMsllHookStruct = MSLLHOOKSTRUCT;
- PMsllHookStruct = LPMSLLHOOKSTRUCT;
- //
- // Structure used by WH_DEBUG
- //
- LPDEBUGHOOKINFO = ^DEBUGHOOKINFO;
- {$EXTERNALSYM LPDEBUGHOOKINFO}
- tagDEBUGHOOKINFO = record
- idThread: DWORD;
- idThreadInstaller: DWORD;
- lParam: LPARAM;
- wParam: WPARAM;
- code: Integer;
- end;
- {$EXTERNALSYM tagDEBUGHOOKINFO}
- DEBUGHOOKINFO = tagDEBUGHOOKINFO;
- {$EXTERNALSYM DEBUGHOOKINFO}
- NPDEBUGHOOKINFO = ^DEBUGHOOKINFO;
- {$EXTERNALSYM NPDEBUGHOOKINFO}
- TDebugHookInfo = DEBUGHOOKINFO;
- PDebugHookInfo = LPDEBUGHOOKINFO;
- //
- // Structure used by WH_MOUSE
- //
- LPMOUSEHOOKSTRUCT = ^MOUSEHOOKSTRUCT;
- {$EXTERNALSYM LPMOUSEHOOKSTRUCT}
- tagMOUSEHOOKSTRUCT = record
- pt: POINT;
- hwnd: HWND;
- wHitTestCode: UINT;
- dwExtraInfo: ULONG_PTR;
- end;
- {$EXTERNALSYM tagMOUSEHOOKSTRUCT}
- MOUSEHOOKSTRUCT = tagMOUSEHOOKSTRUCT;
- {$EXTERNALSYM MOUSEHOOKSTRUCT}
- TMouseHookStruct = MOUSEHOOKSTRUCT;
- PMouseHookStruct = LPMOUSEHOOKSTRUCT;
- LPMOUSEHOOKSTRUCTEX = ^MOUSEHOOKSTRUCTEX;
- {$EXTERNALSYM LPMOUSEHOOKSTRUCTEX}
- tagMOUSEHOOKSTRUCTEX = record
- mhs: MOUSEHOOKSTRUCT;
- mouseData: DWORD;
- end;
- {$EXTERNALSYM tagMOUSEHOOKSTRUCTEX}
- MOUSEHOOKSTRUCTEX = tagMOUSEHOOKSTRUCTEX;
- {$EXTERNALSYM MOUSEHOOKSTRUCTEX}
- TMouseHookStructEx = MOUSEHOOKSTRUCTEX;
- PMouseHookStructEx = LPMOUSEHOOKSTRUCTEX;
- //
- // Structure used by WH_HARDWARE
- //
- LPHARDWAREHOOKSTRUCT = ^HARDWAREHOOKSTRUCT;
- {$EXTERNALSYM LPHARDWAREHOOKSTRUCT}
- tagHARDWAREHOOKSTRUCT = record
- hwnd: HWND;
- message: UINT;
- wParam: WPARAM;
- lParam: LPARAM;
- end;
- {$EXTERNALSYM tagHARDWAREHOOKSTRUCT}
- HARDWAREHOOKSTRUCT = tagHARDWAREHOOKSTRUCT;
- {$EXTERNALSYM HARDWAREHOOKSTRUCT}
- THardwareHookStruct = HARDWAREHOOKSTRUCT;
- PHardwareHookStruct = LPHARDWAREHOOKSTRUCT;
- //
- // Keyboard Layout API
- //
- const
- HKL_PREV = 0;
- {$EXTERNALSYM HKL_PREV}
- HKL_NEXT = 1;
- {$EXTERNALSYM HKL_NEXT}
- KLF_ACTIVATE = $00000001;
- {$EXTERNALSYM KLF_ACTIVATE}
- KLF_SUBSTITUTE_OK = $00000002;
- {$EXTERNALSYM KLF_SUBSTITUTE_OK}
- KLF_REORDER = $00000008;
- {$EXTERNALSYM KLF_REORDER}
- KLF_REPLACELANG = $00000010;
- {$EXTERNALSYM KLF_REPLACELANG}
- KLF_NOTELLSHELL = $00000080;
- {$EXTERNALSYM KLF_NOTELLSHELL}
- KLF_SETFORPROCESS = $00000100;
- {$EXTERNALSYM KLF_SETFORPROCESS}
- KLF_SHIFTLOCK = $00010000;
- {$EXTERNALSYM KLF_SHIFTLOCK}
- KLF_RESET = $40000000;
- {$EXTERNALSYM KLF_RESET}
- //
- // Bits in wParam of WM_INPUTLANGCHANGEREQUEST message
- //
- INPUTLANGCHANGE_SYSCHARSET = $0001;
- {$EXTERNALSYM INPUTLANGCHANGE_SYSCHARSET}
- INPUTLANGCHANGE_FORWARD = $0002;
- {$EXTERNALSYM INPUTLANGCHANGE_FORWARD}
- INPUTLANGCHANGE_BACKWARD = $0004;
- {$EXTERNALSYM INPUTLANGCHANGE_BACKWARD}
- //
- // Size of KeyboardLayoutName (number of characters), including nul terminator
- //
- KL_NAMELENGTH = 9;
- {$EXTERNALSYM KL_NAMELENGTH}
- function LoadKeyboardLayoutA(pwszKLID: LPCSTR; Flags: UINT): HKL; stdcall;
- {$EXTERNALSYM LoadKeyboardLayoutA}
- function LoadKeyboardLayoutW(pwszKLID: LPCWSTR; Flags: UINT): HKL; stdcall;
- {$EXTERNALSYM LoadKeyboardLayoutW}
- {$IFDEF UNICODE}
- function LoadKeyboardLayout(pwszKLID: LPCWSTR; Flags: UINT): HKL; stdcall;
- {$EXTERNALSYM LoadKeyboardLayout}
- {$ELSE}
- function LoadKeyboardLayout(pwszKLID: LPCSTR; Flags: UINT): HKL; stdcall;
- {$EXTERNALSYM LoadKeyboardLayout}
- {$ENDIF}
- {$IFDEF WINVER_0400_GREATER}
- function ActivateKeyboardLayout(hkl: HKL; Flags: UINT): HKL; stdcall;
- {$EXTERNALSYM ActivateKeyboardLayout}
- {$ELSE}
- function ActivateKeyboardLayout(hkl: HKL; Flags: UINT): BOOL; stdcall;
- {$EXTERNALSYM ActivateKeyboardLayout}
- {$ENDIF}
- function ToUnicodeEx(wVirtKey, wScanCode: UINT; lpKeyState: PBYTE;
- pwszBuff: LPWSTR; cchBuff: Integer; wFlags: UINT; dwhkl: HKL): Integer; stdcall;
- {$EXTERNALSYM ToUnicodeEx}
- function UnloadKeyboardLayout(hkl: HKL): BOOL; stdcall;
- {$EXTERNALSYM UnloadKeyboardLayout}
- function GetKeyboardLayoutNameA(pwszKLID: LPSTR): BOOL; stdcall;
- {$EXTERNALSYM GetKeyboardLayoutNameA}
- function GetKeyboardLayoutNameW(pwszKLID: LPWSTR): BOOL; stdcall;
- {$EXTERNALSYM GetKeyboardLayoutNameW}
- {$IFDEF UNICODE}
- function GetKeyboardLayoutName(pwszKLID: LPWSTR): BOOL; stdcall;
- {$EXTERNALSYM GetKeyboardLayoutName}
- {$ELSE}
- function GetKeyboardLayoutName(pwszKLID: LPSTR): BOOL; stdcall;
- {$EXTERNALSYM GetKeyboardLayoutName}
- {$ENDIF}
- function GetKeyboardLayoutList(nBuff: Integer; lpList: PHKL): Integer; stdcall;
- {$EXTERNALSYM GetKeyboardLayoutList}
- function GetKeyboardLayout(idThread: DWORD): HKL; stdcall;
- {$EXTERNALSYM GetKeyboardLayout}
- type
- LPMOUSEMOVEPOINT = ^MOUSEMOVEPOINT;
- {$EXTERNALSYM LPMOUSEMOVEPOINT}
- tagMOUSEMOVEPOINT = record
- x: Integer;
- y: Integer;
- time: DWORD;
- dwExtraInfo: ULONG_PTR;
- end;
- {$EXTERNALSYM tagMOUSEMOVEPOINT}
- MOUSEMOVEPOINT = tagMOUSEMOVEPOINT;
- {$EXTERNALSYM MOUSEMOVEPOINT}
- TMouseMovePoint = MOUSEMOVEPOINT;
- PMouseMovePoint = LPMOUSEMOVEPOINT;
- //
- // Values for resolution parameter of GetMouseMovePointsEx
- //
- const
- GMMP_USE_DISPLAY_POINTS = 1;
- {$EXTERNALSYM GMMP_USE_DISPLAY_POINTS}
- GMMP_USE_HIGH_RESOLUTION_POINTS = 2;
- {$EXTERNALSYM GMMP_USE_HIGH_RESOLUTION_POINTS}
- function GetMouseMovePointsEx(cbSize: UINT; lppt, lpptBuf: LPMOUSEMOVEPOINT;
- nBufPoints: Integer; resolution: DWORD): Integer; stdcall;
- {$EXTERNALSYM GetMouseMovePointsEx}
- //
- // Desktop-specific access flags
- //
- const
- DESKTOP_READOBJECTS = $0001;
- {$EXTERNALSYM DESKTOP_READOBJECTS}
- DESKTOP_CREATEWINDOW = $0002;
- {$EXTERNALSYM DESKTOP_CREATEWINDOW}
- DESKTOP_CREATEMENU = $0004;
- {$EXTERNALSYM DESKTOP_CREATEMENU}
- DESKTOP_HOOKCONTROL = $0008;
- {$EXTERNALSYM DESKTOP_HOOKCONTROL}
- DESKTOP_JOURNALRECORD = $0010;
- {$EXTERNALSYM DESKTOP_JOURNALRECORD}
- DESKTOP_JOURNALPLAYBACK = $0020;
- {$EXTERNALSYM DESKTOP_JOURNALPLAYBACK}
- DESKTOP_ENUMERATE = $0040;
- {$EXTERNALSYM DESKTOP_ENUMERATE}
- DESKTOP_WRITEOBJECTS = $0080;
- {$EXTERNALSYM DESKTOP_WRITEOBJECTS}
- DESKTOP_SWITCHDESKTOP = $0100;
- {$EXTERNALSYM DESKTOP_SWITCHDESKTOP}
- //
- // Desktop-specific control flags
- //
- DF_ALLOWOTHERACCOUNTHOOK = $0001;
- {$EXTERNALSYM DF_ALLOWOTHERACCOUNTHOOK}
- function CreateDesktopA(lpszDesktop, lpszDevice: LPCSTR; pDevmode: LPDEVMODEA;
- dwFlags: DWORD; dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HDESK; stdcall;
- {$EXTERNALSYM CreateDesktopA}
- function CreateDesktopW(lpszDesktop, lpszDevice: LPCWSTR; pDevmode: LPDEVMODEW;
- dwFlags: DWORD; dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HDESK; stdcall;
- {$EXTERNALSYM CreateDesktopW}
- {$IFDEF UNICODE}
- function CreateDesktop(lpszDesktop, lpszDevice: LPCWSTR; pDevmode: LPDEVMODEW;
- dwFlags: DWORD; dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HDESK; stdcall;
- {$EXTERNALSYM CreateDesktop}
- {$ELSE}
- function CreateDesktop(lpszDesktop, lpszDevice: LPCSTR; pDevmode: LPDEVMODEA;
- dwFlags: DWORD; dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HDESK; stdcall;
- {$EXTERNALSYM CreateDesktop}
- {$ENDIF}
- function OpenDesktopA(lpszDesktop: LPCSTR; dwFlags: DWORD; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HDESK; stdcall;
- {$EXTERNALSYM OpenDesktopA}
- function OpenDesktopW(lpszDesktop: LPCWSTR; dwFlags: DWORD; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HDESK; stdcall;
- {$EXTERNALSYM OpenDesktopW}
- {$IFDEF UNICODE}
- function OpenDesktop(lpszDesktop: LPCWSTR; dwFlags: DWORD; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HDESK; stdcall;
- {$EXTERNALSYM OpenDesktop}
- {$ELSE}
- function OpenDesktop(lpszDesktop: LPCSTR; dwFlags: DWORD; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HDESK; stdcall;
- {$EXTERNALSYM OpenDesktop}
- {$ENDIF}
- function OpenInputDesktop(dwFlags: DWORD; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HDESK; stdcall;
- {$EXTERNALSYM OpenInputDesktop}
- function EnumDesktopsA(hwinsta: HWINSTA; lpEnumFunc: DESKTOPENUMPROCA;
- lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumDesktopsA}
- function EnumDesktopsW(hwinsta: HWINSTA; lpEnumFunc: DESKTOPENUMPROCW;
- lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumDesktopsW}
- {$IFDEF UNICODE}
- function EnumDesktops(hwinsta: HWINSTA; lpEnumFunc: DESKTOPENUMPROCW;
- lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumDesktops}
- {$ELSE}
- function EnumDesktops(hwinsta: HWINSTA; lpEnumFunc: DESKTOPENUMPROCA;
- lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumDesktops}
- {$ENDIF}
- function EnumDesktopWindows(hDesktop: HDESK; lpfn: WNDENUMPROC; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumDesktopWindows}
- function SwitchDesktop(hDesktop: HDESK): BOOL; stdcall;
- {$EXTERNALSYM SwitchDesktop}
- function SetThreadDesktop(hDesktop: HDESK): BOOL; stdcall;
- {$EXTERNALSYM SetThreadDesktop}
- function CloseDesktop(hDesktop: HDESK): BOOL; stdcall;
- {$EXTERNALSYM CloseDesktop}
- function GetThreadDesktop(dwThreadId: DWORD): HDESK; stdcall;
- {$EXTERNALSYM GetThreadDesktop}
- //
- // Windowstation-specific access flags
- //
- const
- WINSTA_ENUMDESKTOPS = $0001;
- {$EXTERNALSYM WINSTA_ENUMDESKTOPS}
- WINSTA_READATTRIBUTES = $0002;
- {$EXTERNALSYM WINSTA_READATTRIBUTES}
- WINSTA_ACCESSCLIPBOARD = $0004;
- {$EXTERNALSYM WINSTA_ACCESSCLIPBOARD}
- WINSTA_CREATEDESKTOP = $0008;
- {$EXTERNALSYM WINSTA_CREATEDESKTOP}
- WINSTA_WRITEATTRIBUTES = $0010;
- {$EXTERNALSYM WINSTA_WRITEATTRIBUTES}
- WINSTA_ACCESSGLOBALATOMS = $0020;
- {$EXTERNALSYM WINSTA_ACCESSGLOBALATOMS}
- WINSTA_EXITWINDOWS = $0040;
- {$EXTERNALSYM WINSTA_EXITWINDOWS}
- WINSTA_ENUMERATE = $0100;
- {$EXTERNALSYM WINSTA_ENUMERATE}
- WINSTA_READSCREEN = $0200;
- {$EXTERNALSYM WINSTA_READSCREEN}
- WINSTA_ALL_ACCESS = (WINSTA_ENUMDESKTOPS or WINSTA_READATTRIBUTES or WINSTA_ACCESSCLIPBOARD or
- WINSTA_CREATEDESKTOP or WINSTA_WRITEATTRIBUTES or WINSTA_ACCESSGLOBALATOMS or
- WINSTA_EXITWINDOWS or WINSTA_ENUMERATE or WINSTA_READSCREEN);
- {$EXTERNALSYM WINSTA_ALL_ACCESS}
- //
- // Windowstation-specific attribute flags
- //
- WSF_VISIBLE = $0001;
- {$EXTERNALSYM WSF_VISIBLE}
- function CreateWindowStationA(lpwinsta: LPCSTR; dwReserved: DWORD;
- dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HWINSTA; stdcall;
- {$EXTERNALSYM CreateWindowStationA}
- function CreateWindowStationW(lpwinsta: LPCWSTR; dwReserved: DWORD;
- dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HWINSTA; stdcall;
- {$EXTERNALSYM CreateWindowStationW}
- {$IFDEF UNICODE}
- function CreateWindowStation(lpwinsta: LPCWSTR; dwReserved: DWORD;
- dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HWINSTA; stdcall;
- {$EXTERNALSYM CreateWindowStation}
- {$ELSE}
- function CreateWindowStation(lpwinsta: LPCSTR; dwReserved: DWORD;
- dwDesiredAccess: ACCESS_MASK; lpsa: LPSECURITY_ATTRIBUTES): HWINSTA; stdcall;
- {$EXTERNALSYM CreateWindowStation}
- {$ENDIF}
- function OpenWindowStationA(lpszWinSta: LPCSTR; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HWINSTA; stdcall;
- {$EXTERNALSYM OpenWindowStationA}
- function OpenWindowStationW(lpszWinSta: LPCWSTR; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HWINSTA; stdcall;
- {$EXTERNALSYM OpenWindowStationW}
- {$IFDEF UNICODE}
- function OpenWindowStation(lpszWinSta: LPCWSTR; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HWINSTA; stdcall;
- {$EXTERNALSYM OpenWindowStation}
- {$ELSE}
- function OpenWindowStation(lpszWinSta: LPCSTR; fInherit: BOOL;
- dwDesiredAccess: ACCESS_MASK): HWINSTA; stdcall;
- {$EXTERNALSYM OpenWindowStation}
- {$ENDIF}
- function EnumWindowStationsA(lpEnumFunc: WINSTAENUMPROCA; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumWindowStationsA}
- function EnumWindowStationsW(lpEnumFunc: WINSTAENUMPROCW; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumWindowStationsW}
- {$IFDEF UNICODE}
- function EnumWindowStations(lpEnumFunc: WINSTAENUMPROCW; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumWindowStations}
- {$ELSE}
- function EnumWindowStations(lpEnumFunc: WINSTAENUMPROCA; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM EnumWindowStations}
- {$ENDIF}
- function CloseWindowStation(hWinSta: HWINSTA): BOOL; stdcall;
- {$EXTERNALSYM CloseWindowStation}
- function SetProcessWindowStation(hWinSta: HWINSTA): BOOL; stdcall;
- {$EXTERNALSYM SetProcessWindowStation}
- function GetProcessWindowStation: HWINSTA; stdcall;
- {$EXTERNALSYM GetProcessWindowStation}
- function SetUserObjectSecurity(hObj: HANDLE; var pSIRequested: SECURITY_INFORMATION;
- pSID: PSECURITY_DESCRIPTOR): BOOL; stdcall;
- {$EXTERNALSYM SetUserObjectSecurity}
- function GetUserObjectSecurity(hObj: HANDLE; var pSIRequested: SECURITY_INFORMATION;
- pSID: PSECURITY_DESCRIPTOR; nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
- {$EXTERNALSYM GetUserObjectSecurity}
- const
- UOI_FLAGS = 1;
- {$EXTERNALSYM UOI_FLAGS}
- UOI_NAME = 2;
- {$EXTERNALSYM UOI_NAME}
- UOI_TYPE = 3;
- {$EXTERNALSYM UOI_TYPE}
- UOI_USER_SID = 4;
- {$EXTERNALSYM UOI_USER_SID}
- type
- PUSEROBJECTFLAGS = ^USEROBJECTFLAGS;
- tagUSEROBJECTFLAGS = record
- fInherit: BOOL;
- fReserved: BOOL;
- dwFlags: DWORD;
- end;
- {$EXTERNALSYM tagUSEROBJECTFLAGS}
- USEROBJECTFLAGS = tagUSEROBJECTFLAGS;
- {$EXTERNALSYM USEROBJECTFLAGS}
- TUserObjectFlags = USEROBJECTFLAGS;
- function GetUserObjectInformationA(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
- {$EXTERNALSYM GetUserObjectInformationA}
- function GetUserObjectInformationW(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
- {$EXTERNALSYM GetUserObjectInformationW}
- {$IFDEF UNICODE}
- function GetUserObjectInformation(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
- {$EXTERNALSYM GetUserObjectInformation}
- {$ELSE}
- function GetUserObjectInformation(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD; var lpnLengthNeeded: DWORD): BOOL; stdcall;
- {$EXTERNALSYM GetUserObjectInformation}
- {$ENDIF}
- function SetUserObjectInformationA(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD): BOOL; stdcall;
- {$EXTERNALSYM SetUserObjectInformationA}
- function SetUserObjectInformationW(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD): BOOL; stdcall;
- {$EXTERNALSYM SetUserObjectInformationW}
- {$IFDEF UNICODE}
- function SetUserObjectInformation(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD): BOOL; stdcall;
- {$EXTERNALSYM SetUserObjectInformation}
- {$ELSE}
- function SetUserObjectInformation(hObj: HANDLE; nIndex: Integer; pvInfo: PVOID;
- nLength: DWORD): BOOL; stdcall;
- {$EXTERNALSYM SetUserObjectInformation}
- {$ENDIF}
- type
- LPWNDCLASSEXA = ^WNDCLASSEXA;
- {$EXTERNALSYM LPWNDCLASSEXA}
- tagWNDCLASSEXA = record
- cbSize: UINT;
- // Win 3.x
- style: UINT;
- lpfnWndProc: WNDPROC;
- cbClsExtra: Integer;
- cbWndExtra: Integer;
- hInstance: HINSTANCE;
- hIcon: HICON;
- hCursor: HCURSOR;
- hbrBackground: HBRUSH;
- lpszMenuName: LPCSTR;
- lpszClassName: LPCSTR;
- // Win 4.0
- hIconSm: HICON;
- end;
- {$EXTERNALSYM tagWNDCLASSEXA}
- WNDCLASSEXA = tagWNDCLASSEXA;
- {$EXTERNALSYM WNDCLASSEXA}
- NPWNDCLASSEXA = ^WNDCLASSEXA;
- {$EXTERNALSYM NPWNDCLASSEXA}
- TWndClassExA = WNDCLASSEXA;
- PWndClassExA = LPWNDCLASSEXA;
- LPWNDCLASSEXW = ^WNDCLASSEXW;
- {$EXTERNALSYM LPWNDCLASSEXW}
- tagWNDCLASSEXW = record
- cbSize: UINT;
- // Win 3.x
- style: UINT;
- lpfnWndProc: WNDPROC;
- cbClsExtra: Integer;
- cbWndExtra: Integer;
- hInstance: HINSTANCE;
- hIcon: HICON;
- hCursor: HCURSOR;
- hbrBackground: HBRUSH;
- lpszMenuName: LPCWSTR;
- lpszClassName: LPCWSTR;
- // Win 4.0
- hIconSm: HICON;
- end;
- {$EXTERNALSYM tagWNDCLASSEXW}
- WNDCLASSEXW = tagWNDCLASSEXW;
- {$EXTERNALSYM WNDCLASSEXW}
- NPWNDCLASSEXW = ^WNDCLASSEXW;
- {$EXTERNALSYM NPWNDCLASSEXW}
- TWndClassExW = WNDCLASSEXW;
- PWndClassExW = LPWNDCLASSEXW;
- {$IFDEF UNICODE}
- WNDCLASSEX = WNDCLASSEXW;
- {$EXTERNALSYM WNDCLASSEX}
- NPWNDCLASSEX = NPWNDCLASSEXW;
- {$EXTERNALSYM NPWNDCLASSEX}
- LPWNDCLASSEX = LPWNDCLASSEXW;
- {$EXTERNALSYM LPWNDCLASSEX}
- TWndClassEx = TWndClassExW;
- PWndClassEx = PWndClassExW;
- {$ELSE}
- WNDCLASSEX = WNDCLASSEXA;
- {$EXTERNALSYM WNDCLASSEX}
- NPWNDCLASSEX = NPWNDCLASSEXA;
- {$EXTERNALSYM NPWNDCLASSEX}
- LPWNDCLASSEX = LPWNDCLASSEXA;
- {$EXTERNALSYM LPWNDCLASSEX}
- TWndClassEx = TWndClassExA;
- PWndClassEx = PWndClassExA;
- {$ENDIF}
- LPWNDCLASSA = ^WNDCLASSA;
- {$EXTERNALSYM LPWNDCLASSA}
- tagWNDCLASSA = record
- style: UINT;
- lpfnWndProc: WNDPROC;
- cbClsExtra: Integer;
- cbWndExtra: Integer;
- hInstance: HINSTANCE;
- hIcon: HICON;
- hCursor: HCURSOR;
- hbrBackground: HBRUSH;
- lpszMenuName: LPCSTR;
- lpszClassName: LPCSTR;
- end;
- {$EXTERNALSYM tagWNDCLASSA}
- WNDCLASSA = tagWNDCLASSA;
- {$EXTERNALSYM WNDCLASSA}
- NPWNDCLASSA = ^WNDCLASSA;
- {$EXTERNALSYM NPWNDCLASSA}
- TWndClassA = WNDCLASSA;
- PWndClassA = LPWNDCLASSA;
- LPWNDCLASSW = ^WNDCLASSW;
- {$EXTERNALSYM LPWNDCLASSW}
- tagWNDCLASSW = record
- style: UINT;
- lpfnWndProc: WNDPROC;
- cbClsExtra: Integer;
- cbWndExtra: Integer;
- hInstance: HINSTANCE;
- hIcon: HICON;
- hCursor: HCURSOR;
- hbrBackground: HBRUSH;
- lpszMenuName: LPCWSTR;
- lpszClassName: LPCWSTR;
- end;
- {$EXTERNALSYM tagWNDCLASSW}
- WNDCLASSW = tagWNDCLASSW;
- {$EXTERNALSYM WNDCLASSW}
- NPWNDCLASSW = ^WNDCLASSW;
- {$EXTERNALSYM NPWNDCLASSW}
- TWndClassW = WNDCLASSW;
- PWndClassW = LPWNDCLASSW;
- {$IFDEF UNICODE}
- WNDCLASS = WNDCLASSW;
- {$EXTERNALSYM WNDCLASS}
- NPWNDCLASS = NPWNDCLASSW;
- {$EXTERNALSYM NPWNDCLASS}
- LPWNDCLASS = LPWNDCLASSW;
- {$EXTERNALSYM LPWNDCLASS}
- TWndClass = TWndClassW;
- PWndClass = PWndClassW;
- {$ELSE}
- WNDCLASS = WNDCLASSA;
- {$EXTERNALSYM WNDCLASS}
- NPWNDCLASS = NPWNDCLASSA;
- {$EXTERNALSYM NPWNDCLASS}
- LPWNDCLASS = LPWNDCLASSA;
- {$EXTERNALSYM LPWNDCLASS}
- TWndClass = TWndClassA;
- PWndClass = PWndClassA;
- {$ENDIF}
- function IsHungAppWindow(hwnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsHungAppWindow}
- //
- // Message structure
- //
- type
- LPMSG = ^MSG;
- {$EXTERNALSYM LPMSG}
- tagMSG = record
- hwnd: HWND;
- message: UINT;
- wParam: WPARAM;
- lParam: LPARAM;
- time: DWORD;
- pt: POINT;
- end;
- {$EXTERNALSYM tagMSG}
- MSG = tagMSG;
- {$EXTERNALSYM MSG}
- NPMSG = ^MSG;
- {$EXTERNALSYM NPMSG}
- TMsg = MSG;
- PMsg = LPMSG;
- function MAKEWPARAM(wLow, wHigh: WORD): WPARAM;
- {$EXTERNALSYM MAKEWPARAM}
- function MAKELPARAM(wLow, wHigh: WORD): LPARAM;
- {$EXTERNALSYM MAKELPARAM}
- function MAKELRESULT(wLow, wHigh: WORD): LRESULT;
- {$EXTERNALSYM MAKELRESULT}
- //
- // Window field offsets for GetWindowLong()
- //
- const
- GWL_WNDPROC = -4;
- {$EXTERNALSYM GWL_WNDPROC}
- GWL_HINSTANCE = -6;
- {$EXTERNALSYM GWL_HINSTANCE}
- GWL_HWNDPARENT = -8;
- {$EXTERNALSYM GWL_HWNDPARENT}
- GWL_STYLE = -16;
- {$EXTERNALSYM GWL_STYLE}
- GWL_EXSTYLE = -20;
- {$EXTERNALSYM GWL_EXSTYLE}
- GWL_USERDATA = -21;
- {$EXTERNALSYM GWL_USERDATA}
- GWL_ID = -12;
- {$EXTERNALSYM GWL_ID}
- GWLP_WNDPROC = -4;
- {$EXTERNALSYM GWLP_WNDPROC}
- GWLP_HINSTANCE = -6;
- {$EXTERNALSYM GWLP_HINSTANCE}
- GWLP_HWNDPARENT = -8;
- {$EXTERNALSYM GWLP_HWNDPARENT}
- GWLP_USERDATA = -21;
- {$EXTERNALSYM GWLP_USERDATA}
- GWLP_ID = -12;
- {$EXTERNALSYM GWLP_ID}
- //
- // Class field offsets for GetClassLong()
- //
- GCL_MENUNAME = DWORD(-8);
- {$EXTERNALSYM GCL_MENUNAME}
- GCL_HBRBACKGROUND = DWORD(-10);
- {$EXTERNALSYM GCL_HBRBACKGROUND}
- GCL_HCURSOR = DWORD(-12);
- {$EXTERNALSYM GCL_HCURSOR}
- GCL_HICON = DWORD(-14);
- {$EXTERNALSYM GCL_HICON}
- GCL_HMODULE = DWORD(-16);
- {$EXTERNALSYM GCL_HMODULE}
- GCL_CBWNDEXTRA = DWORD(-18);
- {$EXTERNALSYM GCL_CBWNDEXTRA}
- GCL_CBCLSEXTRA = DWORD(-20);
- {$EXTERNALSYM GCL_CBCLSEXTRA}
- GCL_WNDPROC = DWORD(-24);
- {$EXTERNALSYM GCL_WNDPROC}
- GCL_STYLE = DWORD(-26);
- {$EXTERNALSYM GCL_STYLE}
- GCW_ATOM = DWORD(-32);
- {$EXTERNALSYM GCW_ATOM}
- GCL_HICONSM = DWORD(-34);
- {$EXTERNALSYM GCL_HICONSM}
- GCLP_MENUNAME = DWORD(-8);
- {$EXTERNALSYM GCLP_MENUNAME}
- GCLP_HBRBACKGROUND = DWORD(-10);
- {$EXTERNALSYM GCLP_HBRBACKGROUND}
- GCLP_HCURSOR = DWORD(-12);
- {$EXTERNALSYM GCLP_HCURSOR}
- GCLP_HICON = DWORD(-14);
- {$EXTERNALSYM GCLP_HICON}
- GCLP_HMODULE = DWORD(-16);
- {$EXTERNALSYM GCLP_HMODULE}
- GCLP_WNDPROC = DWORD(-24);
- {$EXTERNALSYM GCLP_WNDPROC}
- GCLP_HICONSM = DWORD(-34);
- {$EXTERNALSYM GCLP_HICONSM}
- //
- // Window Messages
- //
- WM_NULL = $0000;
- {$EXTERNALSYM WM_NULL}
- WM_CREATE = $0001;
- {$EXTERNALSYM WM_CREATE}
- WM_DESTROY = $0002;
- {$EXTERNALSYM WM_DESTROY}
- WM_MOVE = $0003;
- {$EXTERNALSYM WM_MOVE}
- WM_SIZE = $0005;
- {$EXTERNALSYM WM_SIZE}
- WM_ACTIVATE = $0006;
- {$EXTERNALSYM WM_ACTIVATE}
- //
- // WM_ACTIVATE state values
- //
- WA_INACTIVE = 0;
- {$EXTERNALSYM WA_INACTIVE}
- WA_ACTIVE = 1;
- {$EXTERNALSYM WA_ACTIVE}
- WA_CLICKACTIVE = 2;
- {$EXTERNALSYM WA_CLICKACTIVE}
- WM_SETFOCUS = $0007;
- {$EXTERNALSYM WM_SETFOCUS}
- WM_KILLFOCUS = $0008;
- {$EXTERNALSYM WM_KILLFOCUS}
- WM_ENABLE = $000A;
- {$EXTERNALSYM WM_ENABLE}
- WM_SETREDRAW = $000B;
- {$EXTERNALSYM WM_SETREDRAW}
- WM_SETTEXT = $000C;
- {$EXTERNALSYM WM_SETTEXT}
- WM_GETTEXT = $000D;
- {$EXTERNALSYM WM_GETTEXT}
- WM_GETTEXTLENGTH = $000E;
- {$EXTERNALSYM WM_GETTEXTLENGTH}
- WM_PAINT = $000F;
- {$EXTERNALSYM WM_PAINT}
- WM_CLOSE = $0010;
- {$EXTERNALSYM WM_CLOSE}
- WM_QUERYENDSESSION = $0011;
- {$EXTERNALSYM WM_QUERYENDSESSION}
- WM_QUERYOPEN = $0013;
- {$EXTERNALSYM WM_QUERYOPEN}
- WM_ENDSESSION = $0016;
- {$EXTERNALSYM WM_ENDSESSION}
- WM_QUIT = $0012;
- {$EXTERNALSYM WM_QUIT}
- WM_ERASEBKGND = $0014;
- {$EXTERNALSYM WM_ERASEBKGND}
- WM_SYSCOLORCHANGE = $0015;
- {$EXTERNALSYM WM_SYSCOLORCHANGE}
- WM_SHOWWINDOW = $0018;
- {$EXTERNALSYM WM_SHOWWINDOW}
- WM_WININICHANGE = $001A;
- {$EXTERNALSYM WM_WININICHANGE}
- WM_SETTINGCHANGE = WM_WININICHANGE;
- {$EXTERNALSYM WM_SETTINGCHANGE}
- WM_DEVMODECHANGE = $001B;
- {$EXTERNALSYM WM_DEVMODECHANGE}
- WM_ACTIVATEAPP = $001C;
- {$EXTERNALSYM WM_ACTIVATEAPP}
- WM_FONTCHANGE = $001D;
- {$EXTERNALSYM WM_FONTCHANGE}
- WM_TIMECHANGE = $001E;
- {$EXTERNALSYM WM_TIMECHANGE}
- WM_CANCELMODE = $001F;
- {$EXTERNALSYM WM_CANCELMODE}
- WM_SETCURSOR = $0020;
- {$EXTERNALSYM WM_SETCURSOR}
- WM_MOUSEACTIVATE = $0021;
- {$EXTERNALSYM WM_MOUSEACTIVATE}
- WM_CHILDACTIVATE = $0022;
- {$EXTERNALSYM WM_CHILDACTIVATE}
- WM_QUEUESYNC = $0023;
- {$EXTERNALSYM WM_QUEUESYNC}
- WM_GETMINMAXINFO = $0024;
- {$EXTERNALSYM WM_GETMINMAXINFO}
- //
- // Struct pointed to by WM_GETMINMAXINFO lParam
- //
- type
- LPMINMAXINFO = ^MINMAXINFO;
- {$EXTERNALSYM LPMINMAXINFO}
- tagMINMAXINFO = record
- ptReserved: POINT;
- ptMaxSize: POINT;
- ptMaxPosition: POINT;
- ptMinTrackSize: POINT;
- ptMaxTrackSize: POINT;
- end;
- {$EXTERNALSYM tagMINMAXINFO}
- MINMAXINFO = tagMINMAXINFO;
- {$EXTERNALSYM MINMAXINFO}
- TMinMaxInfo = MINMAXINFO;
- PMinMaxInfo = LPMINMAXINFO;
- const
- WM_PAINTICON = $0026;
- {$EXTERNALSYM WM_PAINTICON}
- WM_ICONERASEBKGND = $0027;
- {$EXTERNALSYM WM_ICONERASEBKGND}
- WM_NEXTDLGCTL = $0028;
- {$EXTERNALSYM WM_NEXTDLGCTL}
- WM_SPOOLERSTATUS = $002A;
- {$EXTERNALSYM WM_SPOOLERSTATUS}
- WM_DRAWITEM = $002B;
- {$EXTERNALSYM WM_DRAWITEM}
- WM_MEASUREITEM = $002C;
- {$EXTERNALSYM WM_MEASUREITEM}
- WM_DELETEITEM = $002D;
- {$EXTERNALSYM WM_DELETEITEM}
- WM_VKEYTOITEM = $002E;
- {$EXTERNALSYM WM_VKEYTOITEM}
- WM_CHARTOITEM = $002F;
- {$EXTERNALSYM WM_CHARTOITEM}
- WM_SETFONT = $0030;
- {$EXTERNALSYM WM_SETFONT}
- WM_GETFONT = $0031;
- {$EXTERNALSYM WM_GETFONT}
- WM_SETHOTKEY = $0032;
- {$EXTERNALSYM WM_SETHOTKEY}
- WM_GETHOTKEY = $0033;
- {$EXTERNALSYM WM_GETHOTKEY}
- WM_QUERYDRAGICON = $0037;
- {$EXTERNALSYM WM_QUERYDRAGICON}
- WM_COMPAREITEM = $0039;
- {$EXTERNALSYM WM_COMPAREITEM}
- WM_GETOBJECT = $003D;
- {$EXTERNALSYM WM_GETOBJECT}
- WM_COMPACTING = $0041;
- {$EXTERNALSYM WM_COMPACTING}
- WM_COMMNOTIFY = $0044; // no longer suported
- {$EXTERNALSYM WM_COMMNOTIFY}
- WM_WINDOWPOSCHANGING = $0046;
- {$EXTERNALSYM WM_WINDOWPOSCHANGING}
- WM_WINDOWPOSCHANGED = $0047;
- {$EXTERNALSYM WM_WINDOWPOSCHANGED}
- WM_POWER = $0048;
- {$EXTERNALSYM WM_POWER}
- //
- // wParam for WM_POWER window message and DRV_POWER driver notification
- //
- PWR_OK = 1;
- {$EXTERNALSYM PWR_OK}
- PWR_FAIL = DWORD(-1);
- {$EXTERNALSYM PWR_FAIL}
- PWR_SUSPENDREQUEST = 1;
- {$EXTERNALSYM PWR_SUSPENDREQUEST}
- PWR_SUSPENDRESUME = 2;
- {$EXTERNALSYM PWR_SUSPENDRESUME}
- PWR_CRITICALRESUME = 3;
- {$EXTERNALSYM PWR_CRITICALRESUME}
- WM_COPYDATA = $004A;
- {$EXTERNALSYM WM_COPYDATA}
- WM_CANCELJOURNAL = $004B;
- {$EXTERNALSYM WM_CANCELJOURNAL}
- //
- // lParam of WM_COPYDATA message points to...
- //
- type
- PCOPYDATASTRUCT = ^COPYDATASTRUCT;
- tagCOPYDATASTRUCT = record
- dwData: ULONG_PTR;
- cbData: DWORD;
- lpData: PVOID;
- end;
- {$EXTERNALSYM tagCOPYDATASTRUCT}
- COPYDATASTRUCT = tagCOPYDATASTRUCT;
- {$EXTERNALSYM COPYDATASTRUCT}
- TCopyDataStruct = COPYDATASTRUCT;
- LPMDINEXTMENU = ^MDINEXTMENU;
- {$EXTERNALSYM LPMDINEXTMENU}
- tagMDINEXTMENU = record
- hmenuIn: HMENU;
- hmenuNext: HMENU;
- hwndNext: HWND;
- end;
- {$EXTERNALSYM tagMDINEXTMENU}
- MDINEXTMENU = tagMDINEXTMENU;
- {$EXTERNALSYM MDINEXTMENU}
- TMdiNextMenu = MDINEXTMENU;
- PMdiNextMenu = LPMDINEXTMENU;
- const
- WM_NOTIFY = $004E;
- {$EXTERNALSYM WM_NOTIFY}
- WM_INPUTLANGCHANGEREQUEST = $0050;
- {$EXTERNALSYM WM_INPUTLANGCHANGEREQUEST}
- WM_INPUTLANGCHANGE = $0051;
- {$EXTERNALSYM WM_INPUTLANGCHANGE}
- WM_TCARD = $0052;
- {$EXTERNALSYM WM_TCARD}
- WM_HELP = $0053;
- {$EXTERNALSYM WM_HELP}
- WM_USERCHANGED = $0054;
- {$EXTERNALSYM WM_USERCHANGED}
- WM_NOTIFYFORMAT = $0055;
- {$EXTERNALSYM WM_NOTIFYFORMAT}
- NFR_ANSI = 1;
- {$EXTERNALSYM NFR_ANSI}
- NFR_UNICODE = 2;
- {$EXTERNALSYM NFR_UNICODE}
- NF_QUERY = 3;
- {$EXTERNALSYM NF_QUERY}
- NF_REQUERY = 4;
- {$EXTERNALSYM NF_REQUERY}
- WM_CONTEXTMENU = $007B;
- {$EXTERNALSYM WM_CONTEXTMENU}
- WM_STYLECHANGING = $007C;
- {$EXTERNALSYM WM_STYLECHANGING}
- WM_STYLECHANGED = $007D;
- {$EXTERNALSYM WM_STYLECHANGED}
- WM_DISPLAYCHANGE = $007E;
- {$EXTERNALSYM WM_DISPLAYCHANGE}
- WM_GETICON = $007F;
- {$EXTERNALSYM WM_GETICON}
- WM_SETICON = $0080;
- {$EXTERNALSYM WM_SETICON}
- WM_NCCREATE = $0081;
- {$EXTERNALSYM WM_NCCREATE}
- WM_NCDESTROY = $0082;
- {$EXTERNALSYM WM_NCDESTROY}
- WM_NCCALCSIZE = $0083;
- {$EXTERNALSYM WM_NCCALCSIZE}
- WM_NCHITTEST = $0084;
- {$EXTERNALSYM WM_NCHITTEST}
- WM_NCPAINT = $0085;
- {$EXTERNALSYM WM_NCPAINT}
- WM_NCACTIVATE = $0086;
- {$EXTERNALSYM WM_NCACTIVATE}
- WM_GETDLGCODE = $0087;
- {$EXTERNALSYM WM_GETDLGCODE}
- WM_SYNCPAINT = $0088;
- {$EXTERNALSYM WM_SYNCPAINT}
- WM_NCMOUSEMOVE = $00A0;
- {$EXTERNALSYM WM_NCMOUSEMOVE}
- WM_NCLBUTTONDOWN = $00A1;
- {$EXTERNALSYM WM_NCLBUTTONDOWN}
- WM_NCLBUTTONUP = $00A2;
- {$EXTERNALSYM WM_NCLBUTTONUP}
- WM_NCLBUTTONDBLCLK = $00A3;
- {$EXTERNALSYM WM_NCLBUTTONDBLCLK}
- WM_NCRBUTTONDOWN = $00A4;
- {$EXTERNALSYM WM_NCRBUTTONDOWN}
- WM_NCRBUTTONUP = $00A5;
- {$EXTERNALSYM WM_NCRBUTTONUP}
- WM_NCRBUTTONDBLCLK = $00A6;
- {$EXTERNALSYM WM_NCRBUTTONDBLCLK}
- WM_NCMBUTTONDOWN = $00A7;
- {$EXTERNALSYM WM_NCMBUTTONDOWN}
- WM_NCMBUTTONUP = $00A8;
- {$EXTERNALSYM WM_NCMBUTTONUP}
- WM_NCMBUTTONDBLCLK = $00A9;
- {$EXTERNALSYM WM_NCMBUTTONDBLCLK}
- WM_NCXBUTTONDOWN = $00AB;
- {$EXTERNALSYM WM_NCXBUTTONDOWN}
- WM_NCXBUTTONUP = $00AC;
- {$EXTERNALSYM WM_NCXBUTTONUP}
- WM_NCXBUTTONDBLCLK = $00AD;
- {$EXTERNALSYM WM_NCXBUTTONDBLCLK}
- WM_INPUT = $00FF;
- {$EXTERNALSYM WM_INPUT}
- WM_KEYFIRST = $0100;
- {$EXTERNALSYM WM_KEYFIRST}
- WM_KEYDOWN = $0100;
- {$EXTERNALSYM WM_KEYDOWN}
- WM_KEYUP = $0101;
- {$EXTERNALSYM WM_KEYUP}
- WM_CHAR = $0102;
- {$EXTERNALSYM WM_CHAR}
- WM_DEADCHAR = $0103;
- {$EXTERNALSYM WM_DEADCHAR}
- WM_SYSKEYDOWN = $0104;
- {$EXTERNALSYM WM_SYSKEYDOWN}
- WM_SYSKEYUP = $0105;
- {$EXTERNALSYM WM_SYSKEYUP}
- WM_SYSCHAR = $0106;
- {$EXTERNALSYM WM_SYSCHAR}
- WM_SYSDEADCHAR = $0107;
- {$EXTERNALSYM WM_SYSDEADCHAR}
- {$IFDEF WIN32_WINNT_GREATER_EQUAL_0501}
- WM_UNICHAR = $0109;
- {$EXTERNALSYM WM_UNICHAR}
- WM_KEYLAST = $0109;
- {$EXTERNALSYM WM_KEYLAST}
- UNICODE_NOCHAR = $FFFF;
- {$EXTERNALSYM UNICODE_NOCHAR}
- {$ELSE}
- WM_KEYLAST = $0108;
- {$EXTERNALSYM WM_KEYLAST}
- {$ENDIF}
- WM_IME_STARTCOMPOSITION = $010D;
- {$EXTERNALSYM WM_IME_STARTCOMPOSITION}
- WM_IME_ENDCOMPOSITION = $010E;
- {$EXTERNALSYM WM_IME_ENDCOMPOSITION}
- WM_IME_COMPOSITION = $010F;
- {$EXTERNALSYM WM_IME_COMPOSITION}
- WM_IME_KEYLAST = $010F;
- {$EXTERNALSYM WM_IME_KEYLAST}
- WM_INITDIALOG = $0110;
- {$EXTERNALSYM WM_INITDIALOG}
- WM_COMMAND = $0111;
- {$EXTERNALSYM WM_COMMAND}
- WM_SYSCOMMAND = $0112;
- {$EXTERNALSYM WM_SYSCOMMAND}
- WM_TIMER = $0113;
- {$EXTERNALSYM WM_TIMER}
- WM_HSCROLL = $0114;
- {$EXTERNALSYM WM_HSCROLL}
- WM_VSCROLL = $0115;
- {$EXTERNALSYM WM_VSCROLL}
- WM_INITMENU = $0116;
- {$EXTERNALSYM WM_INITMENU}
- WM_INITMENUPOPUP = $0117;
- {$EXTERNALSYM WM_INITMENUPOPUP}
- WM_MENUSELECT = $011F;
- {$EXTERNALSYM WM_MENUSELECT}
- WM_MENUCHAR = $0120;
- {$EXTERNALSYM WM_MENUCHAR}
- WM_ENTERIDLE = $0121;
- {$EXTERNALSYM WM_ENTERIDLE}
- WM_MENURBUTTONUP = $0122;
- {$EXTERNALSYM WM_MENURBUTTONUP}
- WM_MENUDRAG = $0123;
- {$EXTERNALSYM WM_MENUDRAG}
- WM_MENUGETOBJECT = $0124;
- {$EXTERNALSYM WM_MENUGETOBJECT}
- WM_UNINITMENUPOPUP = $0125;
- {$EXTERNALSYM WM_UNINITMENUPOPUP}
- WM_MENUCOMMAND = $0126;
- {$EXTERNALSYM WM_MENUCOMMAND}
- WM_CHANGEUISTATE = $0127;
- {$EXTERNALSYM WM_CHANGEUISTATE}
- WM_UPDATEUISTATE = $0128;
- {$EXTERNALSYM WM_UPDATEUISTATE}
- WM_QUERYUISTATE = $0129;
- {$EXTERNALSYM WM_QUERYUISTATE}
- //
- // LOWORD(wParam) values in WM_*UISTATE*
- //
- UIS_SET = 1;
- {$EXTERNALSYM UIS_SET}
- UIS_CLEAR = 2;
- {$EXTERNALSYM UIS_CLEAR}
- UIS_INITIALIZE = 3;
- {$EXTERNALSYM UIS_INITIALIZE}
- //
- // HIWORD(wParam) values in WM_*UISTATE*
- //
- UISF_HIDEFOCUS = $1;
- {$EXTERNALSYM UISF_HIDEFOCUS}
- UISF_HIDEACCEL = $2;
- {$EXTERNALSYM UISF_HIDEACCEL}
- UISF_ACTIVE = $4;
- {$EXTERNALSYM UISF_ACTIVE}
- WM_CTLCOLORMSGBOX = $0132;
- {$EXTERNALSYM WM_CTLCOLORMSGBOX}
- WM_CTLCOLOREDIT = $0133;
- {$EXTERNALSYM WM_CTLCOLOREDIT}
- WM_CTLCOLORLISTBOX = $0134;
- {$EXTERNALSYM WM_CTLCOLORLISTBOX}
- WM_CTLCOLORBTN = $0135;
- {$EXTERNALSYM WM_CTLCOLORBTN}
- WM_CTLCOLORDLG = $0136;
- {$EXTERNALSYM WM_CTLCOLORDLG}
- WM_CTLCOLORSCROLLBAR = $0137;
- {$EXTERNALSYM WM_CTLCOLORSCROLLBAR}
- WM_CTLCOLORSTATIC = $0138;
- {$EXTERNALSYM WM_CTLCOLORSTATIC}
- WM_MOUSEFIRST = $0200;
- {$EXTERNALSYM WM_MOUSEFIRST}
- WM_MOUSEMOVE = $0200;
- {$EXTERNALSYM WM_MOUSEMOVE}
- WM_LBUTTONDOWN = $0201;
- {$EXTERNALSYM WM_LBUTTONDOWN}
- WM_LBUTTONUP = $0202;
- {$EXTERNALSYM WM_LBUTTONUP}
- WM_LBUTTONDBLCLK = $0203;
- {$EXTERNALSYM WM_LBUTTONDBLCLK}
- WM_RBUTTONDOWN = $0204;
- {$EXTERNALSYM WM_RBUTTONDOWN}
- WM_RBUTTONUP = $0205;
- {$EXTERNALSYM WM_RBUTTONUP}
- WM_RBUTTONDBLCLK = $0206;
- {$EXTERNALSYM WM_RBUTTONDBLCLK}
- WM_MBUTTONDOWN = $0207;
- {$EXTERNALSYM WM_MBUTTONDOWN}
- WM_MBUTTONUP = $0208;
- {$EXTERNALSYM WM_MBUTTONUP}
- WM_MBUTTONDBLCLK = $0209;
- {$EXTERNALSYM WM_MBUTTONDBLCLK}
- WM_MOUSEWHEEL = $020A;
- {$EXTERNALSYM WM_MOUSEWHEEL}
- WM_XBUTTONDOWN = $020B;
- {$EXTERNALSYM WM_XBUTTONDOWN}
- WM_XBUTTONUP = $020C;
- {$EXTERNALSYM WM_XBUTTONUP}
- WM_XBUTTONDBLCLK = $020D;
- {$EXTERNALSYM WM_XBUTTONDBLCLK}
- {$IFDEF WINNT_0500_GREATER}
- WM_MOUSELAST = $020D;
- {$EXTERNALSYM WM_MOUSELAST}
- {$ELSE}
- {$IFDEF WINNT_0400_GREATER}
- WM_MOUSELAST = $020A;
- {$EXTERNALSYM WM_MOUSELAST}
- {$ELSE}
- {$IFDEF WINDOWS_0400_GREATER}
- WM_MOUSELAST = $020A;
- {$EXTERNALSYM WM_MOUSELAST}
- {$ELSE}
- WM_MOUSELAST = $0209;
- {$EXTERNALSYM WM_MOUSELAST}
- {$ENDIF}
- {$ENDIF}
- {$ENDIF}
- // Value for rolling one detent//
- WHEEL_DELTA = 120;
- {$EXTERNALSYM WHEEL_DELTA}
- function GET_WHEEL_DELTA_WPARAM(wParam: WPARAM): SHORT;
- {$EXTERNALSYM GET_WHEEL_DELTA_WPARAM(wParam)}
- // Setting to scroll one page for SPI_GET/SETWHEELSCROLLLINES//
- const
- WHEEL_PAGESCROLL = UINT_MAX;
- {$EXTERNALSYM WHEEL_PAGESCROLL}
- function GET_KEYSTATE_WPARAM(wParam: WPARAM): Integer;
- {$EXTERNALSYM GET_KEYSTATE_WPARAM}
- function GET_NCHITTEST_WPARAM(wParam: WPARAM): Shortint;
- {$EXTERNALSYM GET_NCHITTEST_WPARAM}
- function GET_XBUTTON_WPARAM(wParam: WPARAM): Integer;
- {$EXTERNALSYM GET_XBUTTON_WPARAM}
- // XButton values are WORD flags//
- const
- XBUTTON1 = $0001;
- {$EXTERNALSYM XBUTTON1}
- XBUTTON2 = $0002;
- {$EXTERNALSYM XBUTTON2}
- // Were there to be an XBUTTON3, it's value would be 0x0004//
- WM_PARENTNOTIFY = $0210;
- {$EXTERNALSYM WM_PARENTNOTIFY}
- WM_ENTERMENULOOP = $0211;
- {$EXTERNALSYM WM_ENTERMENULOOP}
- WM_EXITMENULOOP = $0212;
- {$EXTERNALSYM WM_EXITMENULOOP}
- WM_NEXTMENU = $0213;
- {$EXTERNALSYM WM_NEXTMENU}
- WM_SIZING = $0214;
- {$EXTERNALSYM WM_SIZING}
- WM_CAPTURECHANGED = $0215;
- {$EXTERNALSYM WM_CAPTURECHANGED}
- WM_MOVING = $0216;
- {$EXTERNALSYM WM_MOVING}
- WM_POWERBROADCAST = $0218;
- {$EXTERNALSYM WM_POWERBROADCAST}
- PBT_APMQUERYSUSPEND = $0000;
- {$EXTERNALSYM PBT_APMQUERYSUSPEND}
- PBT_APMQUERYSTANDBY = $0001;
- {$EXTERNALSYM PBT_APMQUERYSTANDBY}
- PBT_APMQUERYSUSPENDFAILED = $0002;
- {$EXTERNALSYM PBT_APMQUERYSUSPENDFAILED}
- PBT_APMQUERYSTANDBYFAILED = $0003;
- {$EXTERNALSYM PBT_APMQUERYSTANDBYFAILED}
- PBT_APMSUSPEND = $0004;
- {$EXTERNALSYM PBT_APMSUSPEND}
- PBT_APMSTANDBY = $0005;
- {$EXTERNALSYM PBT_APMSTANDBY}
- PBT_APMRESUMECRITICAL = $0006;
- {$EXTERNALSYM PBT_APMRESUMECRITICAL}
- PBT_APMRESUMESUSPEND = $0007;
- {$EXTERNALSYM PBT_APMRESUMESUSPEND}
- PBT_APMRESUMESTANDBY = $0008;
- {$EXTERNALSYM PBT_APMRESUMESTANDBY}
- PBTF_APMRESUMEFROMFAILURE = $00000001;
- {$EXTERNALSYM PBTF_APMRESUMEFROMFAILURE}
- PBT_APMBATTERYLOW = $0009;
- {$EXTERNALSYM PBT_APMBATTERYLOW}
- PBT_APMPOWERSTATUSCHANGE = $000A;
- {$EXTERNALSYM PBT_APMPOWERSTATUSCHANGE}
- PBT_APMOEMEVENT = $000B;
- {$EXTERNALSYM PBT_APMOEMEVENT}
- PBT_APMRESUMEAUTOMATIC = $0012;
- {$EXTERNALSYM PBT_APMRESUMEAUTOMATIC}
- WM_DEVICECHANGE = $0219;
- {$EXTERNALSYM WM_DEVICECHANGE}
- WM_MDICREATE = $0220;
- {$EXTERNALSYM WM_MDICREATE}
- WM_MDIDESTROY = $0221;
- {$EXTERNALSYM WM_MDIDESTROY}
- WM_MDIACTIVATE = $0222;
- {$EXTERNALSYM WM_MDIACTIVATE}
- WM_MDIRESTORE = $0223;
- {$EXTERNALSYM WM_MDIRESTORE}
- WM_MDINEXT = $0224;
- {$EXTERNALSYM WM_MDINEXT}
- WM_MDIMAXIMIZE = $0225;
- {$EXTERNALSYM WM_MDIMAXIMIZE}
- WM_MDITILE = $0226;
- {$EXTERNALSYM WM_MDITILE}
- WM_MDICASCADE = $0227;
- {$EXTERNALSYM WM_MDICASCADE}
- WM_MDIICONARRANGE = $0228;
- {$EXTERNALSYM WM_MDIICONARRANGE}
- WM_MDIGETACTIVE = $0229;
- {$EXTERNALSYM WM_MDIGETACTIVE}
- WM_MDISETMENU = $0230;
- {$EXTERNALSYM WM_MDISETMENU}
- WM_ENTERSIZEMOVE = $0231;
- {$EXTERNALSYM WM_ENTERSIZEMOVE}
- WM_EXITSIZEMOVE = $0232;
- {$EXTERNALSYM WM_EXITSIZEMOVE}
- WM_DROPFILES = $0233;
- {$EXTERNALSYM WM_DROPFILES}
- WM_MDIREFRESHMENU = $0234;
- {$EXTERNALSYM WM_MDIREFRESHMENU}
- WM_IME_SETCONTEXT = $0281;
- {$EXTERNALSYM WM_IME_SETCONTEXT}
- WM_IME_NOTIFY = $0282;
- {$EXTERNALSYM WM_IME_NOTIFY}
- WM_IME_CONTROL = $0283;
- {$EXTERNALSYM WM_IME_CONTROL}
- WM_IME_COMPOSITIONFULL = $0284;
- {$EXTERNALSYM WM_IME_COMPOSITIONFULL}
- WM_IME_SELECT = $0285;
- {$EXTERNALSYM WM_IME_SELECT}
- WM_IME_CHAR = $0286;
- {$EXTERNALSYM WM_IME_CHAR}
- WM_IME_REQUEST = $0288;
- {$EXTERNALSYM WM_IME_REQUEST}
- WM_IME_KEYDOWN = $0290;
- {$EXTERNALSYM WM_IME_KEYDOWN}
- WM_IME_KEYUP = $0291;
- {$EXTERNALSYM WM_IME_KEYUP}
- WM_MOUSEHOVER = $02A1;
- {$EXTERNALSYM WM_MOUSEHOVER}
- WM_MOUSELEAVE = $02A3;
- {$EXTERNALSYM WM_MOUSELEAVE}
- WM_NCMOUSEHOVER = $02A0;
- {$EXTERNALSYM WM_NCMOUSEHOVER}
- WM_NCMOUSELEAVE = $02A2;
- {$EXTERNALSYM WM_NCMOUSELEAVE}
- WM_WTSSESSION_CHANGE = $02B1;
- {$EXTERNALSYM WM_WTSSESSION_CHANGE}
- WM_TABLET_FIRST = $02c0;
- {$EXTERNALSYM WM_TABLET_FIRST}
- WM_TABLET_LAST = $02df;
- {$EXTERNALSYM WM_TABLET_LAST}
- WM_CUT = $0300;
- {$EXTERNALSYM WM_CUT}
- WM_COPY = $0301;
- {$EXTERNALSYM WM_COPY}
- WM_PASTE = $0302;
- {$EXTERNALSYM WM_PASTE}
- WM_CLEAR = $0303;
- {$EXTERNALSYM WM_CLEAR}
- WM_UNDO = $0304;
- {$EXTERNALSYM WM_UNDO}
- WM_RENDERFORMAT = $0305;
- {$EXTERNALSYM WM_RENDERFORMAT}
- WM_RENDERALLFORMATS = $0306;
- {$EXTERNALSYM WM_RENDERALLFORMATS}
- WM_DESTROYCLIPBOARD = $0307;
- {$EXTERNALSYM WM_DESTROYCLIPBOARD}
- WM_DRAWCLIPBOARD = $0308;
- {$EXTERNALSYM WM_DRAWCLIPBOARD}
- WM_PAINTCLIPBOARD = $0309;
- {$EXTERNALSYM WM_PAINTCLIPBOARD}
- WM_VSCROLLCLIPBOARD = $030A;
- {$EXTERNALSYM WM_VSCROLLCLIPBOARD}
- WM_SIZECLIPBOARD = $030B;
- {$EXTERNALSYM WM_SIZECLIPBOARD}
- WM_ASKCBFORMATNAME = $030C;
- {$EXTERNALSYM WM_ASKCBFORMATNAME}
- WM_CHANGECBCHAIN = $030D;
- {$EXTERNALSYM WM_CHANGECBCHAIN}
- WM_HSCROLLCLIPBOARD = $030E;
- {$EXTERNALSYM WM_HSCROLLCLIPBOARD}
- WM_QUERYNEWPALETTE = $030F;
- {$EXTERNALSYM WM_QUERYNEWPALETTE}
- WM_PALETTEISCHANGING = $0310;
- {$EXTERNALSYM WM_PALETTEISCHANGING}
- WM_PALETTECHANGED = $0311;
- {$EXTERNALSYM WM_PALETTECHANGED}
- WM_HOTKEY = $0312;
- {$EXTERNALSYM WM_HOTKEY}
- WM_PRINT = $0317;
- {$EXTERNALSYM WM_PRINT}
- WM_PRINTCLIENT = $0318;
- {$EXTERNALSYM WM_PRINTCLIENT}
- WM_APPCOMMAND = $0319;
- {$EXTERNALSYM WM_APPCOMMAND}
- WM_THEMECHANGED = $031A;
- {$EXTERNALSYM WM_THEMECHANGED}
- WM_HANDHELDFIRST = $0358;
- {$EXTERNALSYM WM_HANDHELDFIRST}
- WM_HANDHELDLAST = $035F;
- {$EXTERNALSYM WM_HANDHELDLAST}
- WM_AFXFIRST = $0360;
- {$EXTERNALSYM WM_AFXFIRST}
- WM_AFXLAST = $037F;
- {$EXTERNALSYM WM_AFXLAST}
- WM_PENWINFIRST = $0380;
- {$EXTERNALSYM WM_PENWINFIRST}
- WM_PENWINLAST = $038F;
- {$EXTERNALSYM WM_PENWINLAST}
- WM_APP = $8000;
- {$EXTERNALSYM WM_APP}
- //
- // NOTE: All Message Numbers below 0x0400 are RESERVED.
- //
- // Private Window Messages Start Here:
- //
- WM_USER = $0400;
- {$EXTERNALSYM WM_USER}
- // wParam for WM_SIZING message
- WMSZ_LEFT = 1;
- {$EXTERNALSYM WMSZ_LEFT}
- WMSZ_RIGHT = 2;
- {$EXTERNALSYM WMSZ_RIGHT}
- WMSZ_TOP = 3;
- {$EXTERNALSYM WMSZ_TOP}
- WMSZ_TOPLEFT = 4;
- {$EXTERNALSYM WMSZ_TOPLEFT}
- WMSZ_TOPRIGHT = 5;
- {$EXTERNALSYM WMSZ_TOPRIGHT}
- WMSZ_BOTTOM = 6;
- {$EXTERNALSYM WMSZ_BOTTOM}
- WMSZ_BOTTOMLEFT = 7;
- {$EXTERNALSYM WMSZ_BOTTOMLEFT}
- WMSZ_BOTTOMRIGHT = 8;
- {$EXTERNALSYM WMSZ_BOTTOMRIGHT}
- //
- // WM_NCHITTEST and MOUSEHOOKSTRUCT Mouse Position Codes
- //
- HTERROR = DWORD(-2);
- {$EXTERNALSYM HTERROR}
- HTTRANSPARENT = DWORD(-1);
- {$EXTERNALSYM HTTRANSPARENT}
- HTNOWHERE = 0;
- {$EXTERNALSYM HTNOWHERE}
- HTCLIENT = 1;
- {$EXTERNALSYM HTCLIENT}
- HTCAPTION = 2;
- {$EXTERNALSYM HTCAPTION}
- HTSYSMENU = 3;
- {$EXTERNALSYM HTSYSMENU}
- HTGROWBOX = 4;
- {$EXTERNALSYM HTGROWBOX}
- HTSIZE = HTGROWBOX;
- {$EXTERNALSYM HTSIZE}
- HTMENU = 5;
- {$EXTERNALSYM HTMENU}
- HTHSCROLL = 6;
- {$EXTERNALSYM HTHSCROLL}
- HTVSCROLL = 7;
- {$EXTERNALSYM HTVSCROLL}
- HTMINBUTTON = 8;
- {$EXTERNALSYM HTMINBUTTON}
- HTMAXBUTTON = 9;
- {$EXTERNALSYM HTMAXBUTTON}
- HTLEFT = 10;
- {$EXTERNALSYM HTLEFT}
- HTRIGHT = 11;
- {$EXTERNALSYM HTRIGHT}
- HTTOP = 12;
- {$EXTERNALSYM HTTOP}
- HTTOPLEFT = 13;
- {$EXTERNALSYM HTTOPLEFT}
- HTTOPRIGHT = 14;
- {$EXTERNALSYM HTTOPRIGHT}
- HTBOTTOM = 15;
- {$EXTERNALSYM HTBOTTOM}
- HTBOTTOMLEFT = 16;
- {$EXTERNALSYM HTBOTTOMLEFT}
- HTBOTTOMRIGHT = 17;
- {$EXTERNALSYM HTBOTTOMRIGHT}
- HTBORDER = 18;
- {$EXTERNALSYM HTBORDER}
- HTREDUCE = HTMINBUTTON;
- {$EXTERNALSYM HTREDUCE}
- HTZOOM = HTMAXBUTTON;
- {$EXTERNALSYM HTZOOM}
- HTSIZEFIRST = HTLEFT;
- {$EXTERNALSYM HTSIZEFIRST}
- HTSIZELAST = HTBOTTOMRIGHT;
- {$EXTERNALSYM HTSIZELAST}
- HTOBJECT = 19;
- {$EXTERNALSYM HTOBJECT}
- HTCLOSE = 20;
- {$EXTERNALSYM HTCLOSE}
- HTHELP = 21;
- {$EXTERNALSYM HTHELP}
- //
- // SendMessageTimeout values
- //
- SMTO_NORMAL = $0000;
- {$EXTERNALSYM SMTO_NORMAL}
- SMTO_BLOCK = $0001;
- {$EXTERNALSYM SMTO_BLOCK}
- SMTO_ABORTIFHUNG = $0002;
- {$EXTERNALSYM SMTO_ABORTIFHUNG}
- SMTO_NOTIMEOUTIFNOTHUNG = $0008;
- {$EXTERNALSYM SMTO_NOTIMEOUTIFNOTHUNG}
- //
- // WM_MOUSEACTIVATE Return Codes
- //
- MA_ACTIVATE = 1;
- {$EXTERNALSYM MA_ACTIVATE}
- MA_ACTIVATEANDEAT = 2;
- {$EXTERNALSYM MA_ACTIVATEANDEAT}
- MA_NOACTIVATE = 3;
- {$EXTERNALSYM MA_NOACTIVATE}
- MA_NOACTIVATEANDEAT = 4;
- {$EXTERNALSYM MA_NOACTIVATEANDEAT}
- //
- // WM_SETICON / WM_GETICON Type Codes
- //
- ICON_SMALL = 0;
- {$EXTERNALSYM ICON_SMALL}
- ICON_BIG = 1;
- {$EXTERNALSYM ICON_BIG}
- ICON_SMALL2 = 2;
- {$EXTERNALSYM ICON_SMALL2}
- function RegisterWindowMessageA(lpString: LPCSTR): UINT; stdcall;
- {$EXTERNALSYM RegisterWindowMessageA}
- function RegisterWindowMessageW(lpString: LPCWSTR): UINT; stdcall;
- {$EXTERNALSYM RegisterWindowMessageW}
- {$IFDEF UNICODE}
- function RegisterWindowMessage(lpString: LPCWSTR): UINT; stdcall;
- {$EXTERNALSYM RegisterWindowMessage}
- {$ELSE}
- function RegisterWindowMessage(lpString: LPCSTR): UINT; stdcall;
- {$EXTERNALSYM RegisterWindowMessage}
- {$ENDIF}
- //
- // WM_SIZE message wParam values
- //
- const
- SIZE_RESTORED = 0;
- {$EXTERNALSYM SIZE_RESTORED}
- SIZE_MINIMIZED = 1;
- {$EXTERNALSYM SIZE_MINIMIZED}
- SIZE_MAXIMIZED = 2;
- {$EXTERNALSYM SIZE_MAXIMIZED}
- SIZE_MAXSHOW = 3;
- {$EXTERNALSYM SIZE_MAXSHOW}
- SIZE_MAXHIDE = 4;
- {$EXTERNALSYM SIZE_MAXHIDE}
- //
- // Obsolete constant names
- //
- SIZENORMAL = SIZE_RESTORED;
- {$EXTERNALSYM SIZENORMAL}
- SIZEICONIC = SIZE_MINIMIZED;
- {$EXTERNALSYM SIZEICONIC}
- SIZEFULLSCREEN = SIZE_MAXIMIZED;
- {$EXTERNALSYM SIZEFULLSCREEN}
- SIZEZOOMSHOW = SIZE_MAXSHOW;
- {$EXTERNALSYM SIZEZOOMSHOW}
- SIZEZOOMHIDE = SIZE_MAXHIDE;
- {$EXTERNALSYM SIZEZOOMHIDE}
- //
- // WM_WINDOWPOSCHANGING/CHANGED struct pointed to by lParam
- //
- type
- LPWINDOWPOS = ^WINDOWPOS;
- {$EXTERNALSYM LPWINDOWPOS}
- tagWINDOWPOS = record
- hwnd: HWND;
- hwndInsertAfter: HWND;
- x: Integer;
- y: Integer;
- cx: Integer;
- cy: Integer;
- flags: UINT;
- end;
- {$EXTERNALSYM tagWINDOWPOS}
- WINDOWPOS = tagWINDOWPOS;
- {$EXTERNALSYM WINDOWPOS}
- TWindowPos = WINDOWPOS;
- PWindowPos = LPWINDOWPOS;
- //
- // WM_NCCALCSIZE parameter structure
- //
- LPNCCALCSIZE_PARAMS = ^NCCALCSIZE_PARAMS;
- {$EXTERNALSYM LPNCCALCSIZE_PARAMS}
- NCCALCSIZE_PARAMS = record
- rgrc: array [0..2] of RECT;
- lppos: PWINDOWPOS;
- end;
- {$EXTERNALSYM NCCALCSIZE_PARAMS}
- TNcCalcSizeParams = NCCALCSIZE_PARAMS;
- PNcCalcSizeParams = LPNCCALCSIZE_PARAMS;
- //
- // WM_NCCALCSIZE "window valid rect" return values
- //
- const
- WVR_ALIGNTOP = $0010;
- {$EXTERNALSYM WVR_ALIGNTOP}
- WVR_ALIGNLEFT = $0020;
- {$EXTERNALSYM WVR_ALIGNLEFT}
- WVR_ALIGNBOTTOM = $0040;
- {$EXTERNALSYM WVR_ALIGNBOTTOM}
- WVR_ALIGNRIGHT = $0080;
- {$EXTERNALSYM WVR_ALIGNRIGHT}
- WVR_HREDRAW = $0100;
- {$EXTERNALSYM WVR_HREDRAW}
- WVR_VREDRAW = $0200;
- {$EXTERNALSYM WVR_VREDRAW}
- WVR_REDRAW = (WVR_HREDRAW or WVR_VREDRAW);
- {$EXTERNALSYM WVR_REDRAW}
- WVR_VALIDRECTS = $0400;
- {$EXTERNALSYM WVR_VALIDRECTS}
- //
- // Key State Masks for Mouse Messages
- //
- MK_LBUTTON = $0001;
- {$EXTERNALSYM MK_LBUTTON}
- MK_RBUTTON = $0002;
- {$EXTERNALSYM MK_RBUTTON}
- MK_SHIFT = $0004;
- {$EXTERNALSYM MK_SHIFT}
- MK_CONTROL = $0008;
- {$EXTERNALSYM MK_CONTROL}
- MK_MBUTTON = $0010;
- {$EXTERNALSYM MK_MBUTTON}
- MK_XBUTTON1 = $0020;
- {$EXTERNALSYM MK_XBUTTON1}
- MK_XBUTTON2 = $0040;
- {$EXTERNALSYM MK_XBUTTON2}
- TME_HOVER = $00000001;
- {$EXTERNALSYM TME_HOVER}
- TME_LEAVE = $00000002;
- {$EXTERNALSYM TME_LEAVE}
- TME_NONCLIENT = $00000010;
- {$EXTERNALSYM TME_NONCLIENT}
- TME_QUERY = $40000000;
- {$EXTERNALSYM TME_QUERY}
- TME_CANCEL = $80000000;
- {$EXTERNALSYM TME_CANCEL}
- HOVER_DEFAULT = $FFFFFFFF;
- {$EXTERNALSYM HOVER_DEFAULT}
- type
- LPTRACKMOUSEEVENT = ^_TRACKMOUSEEVENT;
- {$EXTERNALSYM LPTRACKMOUSEEVENT}
- _TRACKMOUSEEVENT = record
- cbSize: DWORD;
- dwFlags: DWORD;
- hwndTrack: HWND;
- dwHoverTime: DWORD;
- end;
- //TRACKMOUSEEVENT = _TRACKMOUSEEVENT;
- //{$EXTERNALSYM TRACKMOUSEEVENT}
- TTrackMouseEvent = _TRACKMOUSEEVENT;
- PTrackMouseEvent = LPTRACKMOUSEEVENT;
- function TrackMouseEvent(var lpEventTrack: TTrackMouseEvent): BOOL; stdcall;
- {$EXTERNALSYM TrackMouseEvent}
- //
- // Window Styles
- //
- const
- WS_OVERLAPPED = $00000000;
- {$EXTERNALSYM WS_OVERLAPPED}
- WS_POPUP = $80000000;
- {$EXTERNALSYM WS_POPUP}
- WS_CHILD = $40000000;
- {$EXTERNALSYM WS_CHILD}
- WS_MINIMIZE = $20000000;
- {$EXTERNALSYM WS_MINIMIZE}
- WS_VISIBLE = $10000000;
- {$EXTERNALSYM WS_VISIBLE}
- WS_DISABLED = $08000000;
- {$EXTERNALSYM WS_DISABLED}
- WS_CLIPSIBLINGS = $04000000;
- {$EXTERNALSYM WS_CLIPSIBLINGS}
- WS_CLIPCHILDREN = $02000000;
- {$EXTERNALSYM WS_CLIPCHILDREN}
- WS_MAXIMIZE = $01000000;
- {$EXTERNALSYM WS_MAXIMIZE}
- WS_CAPTION = $00C00000; // WS_BORDER | WS_DLGFRAME
- {$EXTERNALSYM WS_CAPTION}
- WS_BORDER = $00800000;
- {$EXTERNALSYM WS_BORDER}
- WS_DLGFRAME = $00400000;
- {$EXTERNALSYM WS_DLGFRAME}
- WS_VSCROLL = $00200000;
- {$EXTERNALSYM WS_VSCROLL}
- WS_HSCROLL = $00100000;
- {$EXTERNALSYM WS_HSCROLL}
- WS_SYSMENU = $00080000;
- {$EXTERNALSYM WS_SYSMENU}
- WS_THICKFRAME = $00040000;
- {$EXTERNALSYM WS_THICKFRAME}
- WS_GROUP = $00020000;
- {$EXTERNALSYM WS_GROUP}
- WS_TABSTOP = $00010000;
- {$EXTERNALSYM WS_TABSTOP}
- WS_MINIMIZEBOX = $00020000;
- {$EXTERNALSYM WS_MINIMIZEBOX}
- WS_MAXIMIZEBOX = $00010000;
- {$EXTERNALSYM WS_MAXIMIZEBOX}
- WS_TILED = WS_OVERLAPPED;
- {$EXTERNALSYM WS_TILED}
- WS_ICONIC = WS_MINIMIZE;
- {$EXTERNALSYM WS_ICONIC}
- WS_SIZEBOX = WS_THICKFRAME;
- {$EXTERNALSYM WS_SIZEBOX}
- //
- // Common Window Styles
- //
- WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED or WS_CAPTION or WS_SYSMENU or
- WS_THICKFRAME or WS_MINIMIZEBOX or WS_MAXIMIZEBOX);
- {$EXTERNALSYM WS_OVERLAPPEDWINDOW}
- WS_POPUPWINDOW = (WS_POPUP or WS_BORDER or WS_SYSMENU);
- {$EXTERNALSYM WS_POPUPWINDOW}
- WS_CHILDWINDOW = (WS_CHILD);
- {$EXTERNALSYM WS_CHILDWINDOW}
- WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW;
- {$EXTERNALSYM WS_TILEDWINDOW}
- //
- // Extended Window Styles
- //
- WS_EX_DLGMODALFRAME = $00000001;
- {$EXTERNALSYM WS_EX_DLGMODALFRAME}
- WS_EX_NOPARENTNOTIFY = $00000004;
- {$EXTERNALSYM WS_EX_NOPARENTNOTIFY}
- WS_EX_TOPMOST = $00000008;
- {$EXTERNALSYM WS_EX_TOPMOST}
- WS_EX_ACCEPTFILES = $00000010;
- {$EXTERNALSYM WS_EX_ACCEPTFILES}
- WS_EX_TRANSPARENT = $00000020;
- {$EXTERNALSYM WS_EX_TRANSPARENT}
- WS_EX_MDICHILD = $00000040;
- {$EXTERNALSYM WS_EX_MDICHILD}
- WS_EX_TOOLWINDOW = $00000080;
- {$EXTERNALSYM WS_EX_TOOLWINDOW}
- WS_EX_WINDOWEDGE = $00000100;
- {$EXTERNALSYM WS_EX_WINDOWEDGE}
- WS_EX_CLIENTEDGE = $00000200;
- {$EXTERNALSYM WS_EX_CLIENTEDGE}
- WS_EX_CONTEXTHELP = $00000400;
- {$EXTERNALSYM WS_EX_CONTEXTHELP}
- WS_EX_RIGHT = $00001000;
- {$EXTERNALSYM WS_EX_RIGHT}
- WS_EX_LEFT = $00000000;
- {$EXTERNALSYM WS_EX_LEFT}
- WS_EX_RTLREADING = $00002000;
- {$EXTERNALSYM WS_EX_RTLREADING}
- WS_EX_LTRREADING = $00000000;
- {$EXTERNALSYM WS_EX_LTRREADING}
- WS_EX_LEFTSCROLLBAR = $00004000;
- {$EXTERNALSYM WS_EX_LEFTSCROLLBAR}
- WS_EX_RIGHTSCROLLBAR = $00000000;
- {$EXTERNALSYM WS_EX_RIGHTSCROLLBAR}
- WS_EX_CONTROLPARENT = $00010000;
- {$EXTERNALSYM WS_EX_CONTROLPARENT}
- WS_EX_STATICEDGE = $00020000;
- {$EXTERNALSYM WS_EX_STATICEDGE}
- WS_EX_APPWINDOW = $00040000;
- {$EXTERNALSYM WS_EX_APPWINDOW}
- WS_EX_OVERLAPPEDWINDOW = (WS_EX_WINDOWEDGE or WS_EX_CLIENTEDGE);
- {$EXTERNALSYM WS_EX_OVERLAPPEDWINDOW}
- WS_EX_PALETTEWINDOW = (WS_EX_WINDOWEDGE or WS_EX_TOOLWINDOW or WS_EX_TOPMOST);
- {$EXTERNALSYM WS_EX_PALETTEWINDOW}
- WS_EX_LAYERED = $00080000;
- {$EXTERNALSYM WS_EX_LAYERED}
- WS_EX_NOINHERITLAYOUT = $00100000; // Disable inheritence of mirroring by children
- {$EXTERNALSYM WS_EX_NOINHERITLAYOUT}
- WS_EX_LAYOUTRTL = $00400000; // Right to left mirroring
- {$EXTERNALSYM WS_EX_LAYOUTRTL}
- WS_EX_COMPOSITED = $02000000;
- {$EXTERNALSYM WS_EX_COMPOSITED}
- WS_EX_NOACTIVATE = $08000000;
- {$EXTERNALSYM WS_EX_NOACTIVATE}
- //
- // Class styles
- //
- CS_VREDRAW = $0001;
- {$EXTERNALSYM CS_VREDRAW}
- CS_HREDRAW = $0002;
- {$EXTERNALSYM CS_HREDRAW}
- CS_DBLCLKS = $0008;
- {$EXTERNALSYM CS_DBLCLKS}
- CS_OWNDC = $0020;
- {$EXTERNALSYM CS_OWNDC}
- CS_CLASSDC = $0040;
- {$EXTERNALSYM CS_CLASSDC}
- CS_PARENTDC = $0080;
- {$EXTERNALSYM CS_PARENTDC}
- CS_NOCLOSE = $0200;
- {$EXTERNALSYM CS_NOCLOSE}
- CS_SAVEBITS = $0800;
- {$EXTERNALSYM CS_SAVEBITS}
- CS_BYTEALIGNCLIENT = $1000;
- {$EXTERNALSYM CS_BYTEALIGNCLIENT}
- CS_BYTEALIGNWINDOW = $2000;
- {$EXTERNALSYM CS_BYTEALIGNWINDOW}
- CS_GLOBALCLASS = $4000;
- {$EXTERNALSYM CS_GLOBALCLASS}
- CS_IME = $00010000;
- {$EXTERNALSYM CS_IME}
- CS_DROPSHADOW = $00020000;
- {$EXTERNALSYM CS_DROPSHADOW}
- // WM_PRINT flags//
- PRF_CHECKVISIBLE = $00000001;
- {$EXTERNALSYM PRF_CHECKVISIBLE}
- PRF_NONCLIENT = $00000002;
- {$EXTERNALSYM PRF_NONCLIENT}
- PRF_CLIENT = $00000004;
- {$EXTERNALSYM PRF_CLIENT}
- PRF_ERASEBKGND = $00000008;
- {$EXTERNALSYM PRF_ERASEBKGND}
- PRF_CHILDREN = $00000010;
- {$EXTERNALSYM PRF_CHILDREN}
- PRF_OWNED = $00000020;
- {$EXTERNALSYM PRF_OWNED}
- // 3D border styles//
- BDR_RAISEDOUTER = $0001;
- {$EXTERNALSYM BDR_RAISEDOUTER}
- BDR_SUNKENOUTER = $0002;
- {$EXTERNALSYM BDR_SUNKENOUTER}
- BDR_RAISEDINNER = $0004;
- {$EXTERNALSYM BDR_RAISEDINNER}
- BDR_SUNKENINNER = $0008;
- {$EXTERNALSYM BDR_SUNKENINNER}
- BDR_OUTER = (BDR_RAISEDOUTER or BDR_SUNKENOUTER);
- {$EXTERNALSYM BDR_OUTER}
- BDR_INNER = (BDR_RAISEDINNER or BDR_SUNKENINNER);
- {$EXTERNALSYM BDR_INNER}
- BDR_RAISED = (BDR_RAISEDOUTER or BDR_RAISEDINNER);
- {$EXTERNALSYM BDR_RAISED}
- BDR_SUNKEN = (BDR_SUNKENOUTER or BDR_SUNKENINNER);
- {$EXTERNALSYM BDR_SUNKEN}
- EDGE_RAISED = (BDR_RAISEDOUTER or BDR_RAISEDINNER);
- {$EXTERNALSYM EDGE_RAISED}
- EDGE_SUNKEN = (BDR_SUNKENOUTER or BDR_SUNKENINNER);
- {$EXTERNALSYM EDGE_SUNKEN}
- EDGE_ETCHED = (BDR_SUNKENOUTER or BDR_RAISEDINNER);
- {$EXTERNALSYM EDGE_ETCHED}
- EDGE_BUMP = (BDR_RAISEDOUTER or BDR_SUNKENINNER);
- {$EXTERNALSYM EDGE_BUMP}
- // Border flags//
- BF_LEFT = $0001;
- {$EXTERNALSYM BF_LEFT}
- BF_TOP = $0002;
- {$EXTERNALSYM BF_TOP}
- BF_RIGHT = $0004;
- {$EXTERNALSYM BF_RIGHT}
- BF_BOTTOM = $0008;
- {$EXTERNALSYM BF_BOTTOM}
- BF_TOPLEFT = (BF_TOP or BF_LEFT);
- {$EXTERNALSYM BF_TOPLEFT}
- BF_TOPRIGHT = (BF_TOP or BF_RIGHT);
- {$EXTERNALSYM BF_TOPRIGHT}
- BF_BOTTOMLEFT = (BF_BOTTOM or BF_LEFT);
- {$EXTERNALSYM BF_BOTTOMLEFT}
- BF_BOTTOMRIGHT = (BF_BOTTOM or BF_RIGHT);
- {$EXTERNALSYM BF_BOTTOMRIGHT}
- BF_RECT = (BF_LEFT or BF_TOP or BF_RIGHT or BF_BOTTOM);
- {$EXTERNALSYM BF_RECT}
- BF_DIAGONAL = $0010;
- {$EXTERNALSYM BF_DIAGONAL}
- // For diagonal lines, the BF_RECT flags specify the end point of the
- // vector bounded by the rectangle parameter.
- BF_DIAGONAL_ENDTOPRIGHT = (BF_DIAGONAL or BF_TOP or BF_RIGHT);
- {$EXTERNALSYM BF_DIAGONAL_ENDTOPRIGHT}
- BF_DIAGONAL_ENDTOPLEFT = (BF_DIAGONAL or BF_TOP or BF_LEFT);
- {$EXTERNALSYM BF_DIAGONAL_ENDTOPLEFT}
- BF_DIAGONAL_ENDBOTTOMLEFT = (BF_DIAGONAL or BF_BOTTOM or BF_LEFT);
- {$EXTERNALSYM BF_DIAGONAL_ENDBOTTOMLEFT}
- BF_DIAGONAL_ENDBOTTOMRIGHT = (BF_DIAGONAL or BF_BOTTOM or BF_RIGHT);
- {$EXTERNALSYM BF_DIAGONAL_ENDBOTTOMRIGHT}
- BF_MIDDLE = $0800; // Fill in the middle
- {$EXTERNALSYM BF_MIDDLE}
- BF_SOFT = $1000; // For softer buttons
- {$EXTERNALSYM BF_SOFT}
- BF_ADJUST = $2000; // Calculate the space left over
- {$EXTERNALSYM BF_ADJUST}
- BF_FLAT = $4000; // For flat rather than 3D borders
- {$EXTERNALSYM BF_FLAT}
- BF_MONO = $8000; // For monochrome borders
- {$EXTERNALSYM BF_MONO}
- function DrawEdge(hdc: HDC; var qrc: RECT; edge, grfFlags: UINT): BOOL; stdcall;
- {$EXTERNALSYM DrawEdge}
- // flags for DrawFrameControl//
- const
- DFC_CAPTION = 1;
- {$EXTERNALSYM DFC_CAPTION}
- DFC_MENU = 2;
- {$EXTERNALSYM DFC_MENU}
- DFC_SCROLL = 3;
- {$EXTERNALSYM DFC_SCROLL}
- DFC_BUTTON = 4;
- {$EXTERNALSYM DFC_BUTTON}
- DFC_POPUPMENU = 5;
- {$EXTERNALSYM DFC_POPUPMENU}
- DFCS_CAPTIONCLOSE = $0000;
- {$EXTERNALSYM DFCS_CAPTIONCLOSE}
- DFCS_CAPTIONMIN = $0001;
- {$EXTERNALSYM DFCS_CAPTIONMIN}
- DFCS_CAPTIONMAX = $0002;
- {$EXTERNALSYM DFCS_CAPTIONMAX}
- DFCS_CAPTIONRESTORE = $0003;
- {$EXTERNALSYM DFCS_CAPTIONRESTORE}
- DFCS_CAPTIONHELP = $0004;
- {$EXTERNALSYM DFCS_CAPTIONHELP}
- DFCS_MENUARROW = $0000;
- {$EXTERNALSYM DFCS_MENUARROW}
- DFCS_MENUCHECK = $0001;
- {$EXTERNALSYM DFCS_MENUCHECK}
- DFCS_MENUBULLET = $0002;
- {$EXTERNALSYM DFCS_MENUBULLET}
- DFCS_MENUARROWRIGHT = $0004;
- {$EXTERNALSYM DFCS_MENUARROWRIGHT}
- DFCS_SCROLLUP = $0000;
- {$EXTERNALSYM DFCS_SCROLLUP}
- DFCS_SCROLLDOWN = $0001;
- {$EXTERNALSYM DFCS_SCROLLDOWN}
- DFCS_SCROLLLEFT = $0002;
- {$EXTERNALSYM DFCS_SCROLLLEFT}
- DFCS_SCROLLRIGHT = $0003;
- {$EXTERNALSYM DFCS_SCROLLRIGHT}
- DFCS_SCROLLCOMBOBOX = $0005;
- {$EXTERNALSYM DFCS_SCROLLCOMBOBOX}
- DFCS_SCROLLSIZEGRIP = $0008;
- {$EXTERNALSYM DFCS_SCROLLSIZEGRIP}
- DFCS_SCROLLSIZEGRIPRIGHT = $0010;
- {$EXTERNALSYM DFCS_SCROLLSIZEGRIPRIGHT}
- DFCS_BUTTONCHECK = $0000;
- {$EXTERNALSYM DFCS_BUTTONCHECK}
- DFCS_BUTTONRADIOIMAGE = $0001;
- {$EXTERNALSYM DFCS_BUTTONRADIOIMAGE}
- DFCS_BUTTONRADIOMASK = $0002;
- {$EXTERNALSYM DFCS_BUTTONRADIOMASK}
- DFCS_BUTTONRADIO = $0004;
- {$EXTERNALSYM DFCS_BUTTONRADIO}
- DFCS_BUTTON3STATE = $0008;
- {$EXTERNALSYM DFCS_BUTTON3STATE}
- DFCS_BUTTONPUSH = $0010;
- {$EXTERNALSYM DFCS_BUTTONPUSH}
- DFCS_INACTIVE = $0100;
- {$EXTERNALSYM DFCS_INACTIVE}
- DFCS_PUSHED = $0200;
- {$EXTERNALSYM DFCS_PUSHED}
- DFCS_CHECKED = $0400;
- {$EXTERNALSYM DFCS_CHECKED}
- DFCS_TRANSPARENT = $0800;
- {$EXTERNALSYM DFCS_TRANSPARENT}
- DFCS_HOT = $1000;
- {$EXTERNALSYM DFCS_HOT}
- DFCS_ADJUSTRECT = $2000;
- {$EXTERNALSYM DFCS_ADJUSTRECT}
- DFCS_FLAT = $4000;
- {$EXTERNALSYM DFCS_FLAT}
- DFCS_MONO = $8000;
- {$EXTERNALSYM DFCS_MONO}
- function DrawFrameControl(hdc: HDC; const lprc: RECT; uType, uState: UINT): BOOL; stdcall;
- {$EXTERNALSYM DrawFrameControl}
- // flags for DrawCaption//
- const
- DC_ACTIVE = $0001;
- {$EXTERNALSYM DC_ACTIVE}
- DC_SMALLCAP = $0002;
- {$EXTERNALSYM DC_SMALLCAP}
- DC_ICON = $0004;
- {$EXTERNALSYM DC_ICON}
- DC_TEXT = $0008;
- {$EXTERNALSYM DC_TEXT}
- DC_INBUTTON = $0010;
- {$EXTERNALSYM DC_INBUTTON}
- DC_GRADIENT = $0020;
- {$EXTERNALSYM DC_GRADIENT}
- DC_BUTTONS = $1000;
- {$EXTERNALSYM DC_BUTTONS}
- function DrawCaption(hwnd: HWND; hdc: HDC; const lprc: RECT; uFlags: UINT): BOOL; stdcall;
- {$EXTERNALSYM DrawCaption}
- const
- IDANI_OPEN = 1;
- {$EXTERNALSYM IDANI_OPEN}
- IDANI_CAPTION = 3;
- {$EXTERNALSYM IDANI_CAPTION}
- function DrawAnimatedRects(hwnd: HWND; idAni: Integer; const lprcFrom, lprcTo: RECT): BOOL; stdcall;
- {$EXTERNALSYM DrawAnimatedRects}
- //
- // Predefined Clipboard Formats
- //
- const
- CF_TEXT = 1;
- {$EXTERNALSYM CF_TEXT}
- CF_BITMAP = 2;
- {$EXTERNALSYM CF_BITMAP}
- CF_METAFILEPICT = 3;
- {$EXTERNALSYM CF_METAFILEPICT}
- CF_SYLK = 4;
- {$EXTERNALSYM CF_SYLK}
- CF_DIF = 5;
- {$EXTERNALSYM CF_DIF}
- CF_TIFF = 6;
- {$EXTERNALSYM CF_TIFF}
- CF_OEMTEXT = 7;
- {$EXTERNALSYM CF_OEMTEXT}
- CF_DIB = 8;
- {$EXTERNALSYM CF_DIB}
- CF_PALETTE = 9;
- {$EXTERNALSYM CF_PALETTE}
- CF_PENDATA = 10;
- {$EXTERNALSYM CF_PENDATA}
- CF_RIFF = 11;
- {$EXTERNALSYM CF_RIFF}
- CF_WAVE = 12;
- {$EXTERNALSYM CF_WAVE}
- CF_UNICODETEXT = 13;
- {$EXTERNALSYM CF_UNICODETEXT}
- CF_ENHMETAFILE = 14;
- {$EXTERNALSYM CF_ENHMETAFILE}
- CF_HDROP = 15;
- {$EXTERNALSYM CF_HDROP}
- CF_LOCALE = 16;
- {$EXTERNALSYM CF_LOCALE}
- CF_DIBV5 = 17;
- {$EXTERNALSYM CF_DIBV5}
- {$IFDEF WINVER_0500_GREATER}
- CF_MAX = 18;
- {$EXTERNALSYM CF_MAX}
- {$ELSE}
- {$IFDEF WINVER_0400_GREATER}
- CF_MAX = 17;
- {$EXTERNALSYM CF_MAX}
- {$ELSE}
- CF_MAX = 15;
- {$EXTERNALSYM CF_MAX}
- {$ENDIF}
- {$ENDIF}
- CF_OWNERDISPLAY = $0080;
- {$EXTERNALSYM CF_OWNERDISPLAY}
- CF_DSPTEXT = $0081;
- {$EXTERNALSYM CF_DSPTEXT}
- CF_DSPBITMAP = $0082;
- {$EXTERNALSYM CF_DSPBITMAP}
- CF_DSPMETAFILEPICT = $0083;
- {$EXTERNALSYM CF_DSPMETAFILEPICT}
- CF_DSPENHMETAFILE = $008E;
- {$EXTERNALSYM CF_DSPENHMETAFILE}
- //
- // "Private" formats don't get GlobalFree()'d
- //
- CF_PRIVATEFIRST = $0200;
- {$EXTERNALSYM CF_PRIVATEFIRST}
- CF_PRIVATELAST = $02FF;
- {$EXTERNALSYM CF_PRIVATELAST}
- //
- // "GDIOBJ" formats do get DeleteObject()'d
- //
- CF_GDIOBJFIRST = $0300;
- {$EXTERNALSYM CF_GDIOBJFIRST}
- CF_GDIOBJLAST = $03FF;
- {$EXTERNALSYM CF_GDIOBJLAST}
- //
- // Defines for the fVirt field of the Accelerator table structure.
- //
- FVIRTKEY = TRUE; // Assumed to be == TRUE
- {$EXTERNALSYM FVIRTKEY}
- FNOINVERT = $02;
- {$EXTERNALSYM FNOINVERT}
- FSHIFT = $04;
- {$EXTERNALSYM FSHIFT}
- FCONTROL = $08;
- {$EXTERNALSYM FCONTROL}
- FALT = $10;
- {$EXTERNALSYM FALT}
- type
- LPACCEL = ^ACCEL;
- {$EXTERNALSYM LPACCEL}
- tagACCEL = record
- fVirt: BYTE; // Also called the flags field//
- key: WORD;
- cmd: WORD;
- end;
- {$EXTERNALSYM tagACCEL}
- ACCEL = tagACCEL;
- {$EXTERNALSYM ACCEL}
- TAccel = ACCEL;
- PAccel = LPACCEL;
- LPPAINTSTRUCT = ^PAINTSTRUCT;
- {$EXTERNALSYM LPPAINTSTRUCT}
- tagPAINTSTRUCT = record
- hdc: HDC;
- fErase: BOOL;
- rcPaint: RECT;
- fRestore: BOOL;
- fIncUpdate: BOOL;
- rgbReserved: array [0..31] of BYTE;
- end;
- {$EXTERNALSYM tagPAINTSTRUCT}
- PAINTSTRUCT = tagPAINTSTRUCT;
- {$EXTERNALSYM PAINTSTRUCT}
- NPPAINTSTRUCT = ^PAINTSTRUCT;
- {$EXTERNALSYM NPPAINTSTRUCT}
- TPaintStruct = PAINTSTRUCT;
- PPaintStruct = LPPAINTSTRUCT;
- LPCREATESTRUCTA = ^CREATESTRUCTA;
- {$EXTERNALSYM LPCREATESTRUCTA}
- tagCREATESTRUCTA = record
- lpCreateParams: LPVOID;
- hInstance: HINSTANCE;
- hMenu: HMENU;
- hwndParent: HWND;
- cy: Integer;
- cx: Integer;
- y: Integer;
- x: Integer;
- style: LONG;
- lpszName: LPCSTR;
- lpszClass: LPCSTR;
- dwExStyle: DWORD;
- end;
- {$EXTERNALSYM tagCREATESTRUCTA}
- CREATESTRUCTA = tagCREATESTRUCTA;
- {$EXTERNALSYM CREATESTRUCTA}
- TCreateStructA = CREATESTRUCTA;
- PCreateStructA = LPCREATESTRUCTA;
- LPCREATESTRUCTW = ^CREATESTRUCTW;
- {$EXTERNALSYM LPCREATESTRUCTW}
- tagCREATESTRUCTW = record
- lpCreateParams: LPVOID;
- hInstance: HINSTANCE;
- hMenu: HMENU;
- hwndParent: HWND;
- cy: Integer;
- cx: Integer;
- y: Integer;
- x: Integer;
- style: LONG;
- lpszName: LPCWSTR;
- lpszClass: LPCWSTR;
- dwExStyle: DWORD;
- end;
- {$EXTERNALSYM tagCREATESTRUCTW}
- CREATESTRUCTW = tagCREATESTRUCTW;
- {$EXTERNALSYM CREATESTRUCTW}
- TCreateStructW = CREATESTRUCTW;
- PCreateStructW = LPCREATESTRUCTW;
- {$IFDEF UNICODE}
- CREATESTRUCT = CREATESTRUCTW;
- {$EXTERNALSYM CREATESTRUCT}
- LPCREATESTRUCT = LPCREATESTRUCTW;
- {$EXTERNALSYM LPCREATESTRUCT}
- TCreateStruct = TCreateStructW;
- PCreateStruct = PCreateStructW;
- {$ELSE}
- CREATESTRUCT = CREATESTRUCTA;
- {$EXTERNALSYM CREATESTRUCT}
- LPCREATESTRUCT = LPCREATESTRUCTA;
- {$EXTERNALSYM LPCREATESTRUCT}
- TCreateStruct = TCreateStructA;
- PCreateStruct = PCreateStructA;
- {$ENDIF}
- //
- // HCBT_CREATEWND parameters pointed to by lParam
- //
- type
- LPCBT_CREATEWNDA = ^CBT_CREATEWNDA;
- {$EXTERNALSYM LPCBT_CREATEWNDA}
- tagCBT_CREATEWNDA = record
- lpcs: LPCREATESTRUCTA;
- hwndInsertAfter: HWND;
- end;
- {$EXTERNALSYM tagCBT_CREATEWNDA}
- CBT_CREATEWNDA = tagCBT_CREATEWNDA;
- {$EXTERNALSYM CBT_CREATEWNDA}
- TCbtCreateWndA = CBT_CREATEWNDA;
- PCbtCreateWndA = LPCBT_CREATEWNDA;
- //
- // HCBT_CREATEWND parameters pointed to by lParam
- //
- LPCBT_CREATEWNDW = ^CBT_CREATEWNDW;
- {$EXTERNALSYM LPCBT_CREATEWNDW}
- tagCBT_CREATEWNDW = record
- lpcs: LPCREATESTRUCTW;
- hwndInsertAfter: HWND;
- end;
- {$EXTERNALSYM tagCBT_CREATEWNDW}
- CBT_CREATEWNDW = tagCBT_CREATEWNDW;
- {$EXTERNALSYM CBT_CREATEWNDW}
- TCbtCreateWndW = CBT_CREATEWNDW;
- PCbtCreateWndW = LPCBT_CREATEWNDW;
- {$IFDEF UNICODE}
- CBT_CREATEWND = CBT_CREATEWNDW;
- {$EXTERNALSYM CBT_CREATEWND}
- LPCBT_CREATEWND = LPCBT_CREATEWNDW;
- {$EXTERNALSYM LPCBT_CREATEWND}
- {$ELSE}
- CBT_CREATEWND = CBT_CREATEWNDA;
- {$EXTERNALSYM CBT_CREATEWND}
- LPCBT_CREATEWND = LPCBT_CREATEWNDA;
- {$EXTERNALSYM LPCBT_CREATEWND}
- {$ENDIF}
- LPWINDOWPLACEMENT = ^WINDOWPLACEMENT;
- {$EXTERNALSYM LPWINDOWPLACEMENT}
- tagWINDOWPLACEMENT = record
- length: UINT;
- flags: UINT;
- showCmd: UINT;
- ptMinPosition: POINT;
- ptMaxPosition: POINT;
- rcNormalPosition: RECT;
- end;
- {$EXTERNALSYM tagWINDOWPLACEMENT}
- WINDOWPLACEMENT = tagWINDOWPLACEMENT;
- {$EXTERNALSYM WINDOWPLACEMENT}
- TWindowPlacement = WINDOWPLACEMENT;
- PWindowPlacement = LPWINDOWPLACEMENT;
- const
- WPF_SETMINPOSITION = $0001;
- {$EXTERNALSYM WPF_SETMINPOSITION}
- WPF_RESTORETOMAXIMIZED = $0002;
- {$EXTERNALSYM WPF_RESTORETOMAXIMIZED}
- WPF_ASYNCWINDOWPLACEMENT = $0004;
- {$EXTERNALSYM WPF_ASYNCWINDOWPLACEMENT}
- type
- LPNMHDR = ^NMHDR;
- {$EXTERNALSYM LPNMHDR}
- tagNMHDR = record
- hwndFrom: HWND;
- idFrom: UINT_PTR;
- code: UINT; // NM_ code
- end;
- {$EXTERNALSYM tagNMHDR}
- NMHDR = tagNMHDR;
- {$EXTERNALSYM NMHDR}
- TNmHdr = NMHDR;
- PNmHdr = LPNMHDR;
- LPSTYLESTRUCT = ^STYLESTRUCT;
- {$EXTERNALSYM LPSTYLESTRUCT}
- tagSTYLESTRUCT = record
- styleOld: DWORD;
- styleNew: DWORD;
- end;
- {$EXTERNALSYM tagSTYLESTRUCT}
- STYLESTRUCT = tagSTYLESTRUCT;
- {$EXTERNALSYM STYLESTRUCT}
- TStyleStruct = STYLESTRUCT;
- PStyleStruct = LPSTYLESTRUCT;
- //
- // Owner draw control types
- //
- const
- ODT_MENU = 1;
- {$EXTERNALSYM ODT_MENU}
- ODT_LISTBOX = 2;
- {$EXTERNALSYM ODT_LISTBOX}
- ODT_COMBOBOX = 3;
- {$EXTERNALSYM ODT_COMBOBOX}
- ODT_BUTTON = 4;
- {$EXTERNALSYM ODT_BUTTON}
- ODT_STATIC = 5;
- {$EXTERNALSYM ODT_STATIC}
- //
- // Owner draw actions
- //
- ODA_DRAWENTIRE = $0001;
- {$EXTERNALSYM ODA_DRAWENTIRE}
- ODA_SELECT = $0002;
- {$EXTERNALSYM ODA_SELECT}
- ODA_FOCUS = $0004;
- {$EXTERNALSYM ODA_FOCUS}
- //
- // Owner draw state
- //
- ODS_SELECTED = $0001;
- {$EXTERNALSYM ODS_SELECTED}
- ODS_GRAYED = $0002;
- {$EXTERNALSYM ODS_GRAYED}
- ODS_DISABLED = $0004;
- {$EXTERNALSYM ODS_DISABLED}
- ODS_CHECKED = $0008;
- {$EXTERNALSYM ODS_CHECKED}
- ODS_FOCUS = $0010;
- {$EXTERNALSYM ODS_FOCUS}
- ODS_DEFAULT = $0020;
- {$EXTERNALSYM ODS_DEFAULT}
- ODS_COMBOBOXEDIT = $1000;
- {$EXTERNALSYM ODS_COMBOBOXEDIT}
- ODS_HOTLIGHT = $0040;
- {$EXTERNALSYM ODS_HOTLIGHT}
- ODS_INACTIVE = $0080;
- {$EXTERNALSYM ODS_INACTIVE}
- ODS_NOACCEL = $0100;
- {$EXTERNALSYM ODS_NOACCEL}
- ODS_NOFOCUSRECT = $0200;
- {$EXTERNALSYM ODS_NOFOCUSRECT}
- //
- // MEASUREITEMSTRUCT for ownerdraw
- //
- type
- LPMEASUREITEMSTRUCT = ^MEASUREITEMSTRUCT;
- {$EXTERNALSYM LPMEASUREITEMSTRUCT}
- tagMEASUREITEMSTRUCT = record
- CtlType: UINT;
- CtlID: UINT;
- itemID: UINT;
- itemWidth: UINT;
- itemHeight: UINT;
- itemData: ULONG_PTR;
- end;
- {$EXTERNALSYM tagMEASUREITEMSTRUCT}
- MEASUREITEMSTRUCT = tagMEASUREITEMSTRUCT;
- {$EXTERNALSYM MEASUREITEMSTRUCT}
- TMeasureItemStruct = MEASUREITEMSTRUCT;
- PMeasureItemStruct = LPMEASUREITEMSTRUCT;
- //
- // DRAWITEMSTRUCT for ownerdraw
- //
- LPDRAWITEMSTRUCT = ^DRAWITEMSTRUCT;
- {$EXTERNALSYM LPDRAWITEMSTRUCT}
- tagDRAWITEMSTRUCT = record
- CtlType: UINT;
- CtlID: UINT;
- itemID: UINT;
- itemAction: UINT;
- itemState: UINT;
- hwndItem: HWND;
- hDC: HDC;
- rcItem: RECT;
- itemData: ULONG_PTR;
- end;
- {$EXTERNALSYM tagDRAWITEMSTRUCT}
- DRAWITEMSTRUCT = tagDRAWITEMSTRUCT;
- {$EXTERNALSYM DRAWITEMSTRUCT}
- TDrawItemStruct = DRAWITEMSTRUCT;
- PDrawItemStruct = LPDRAWITEMSTRUCT;
- //
- // DELETEITEMSTRUCT for ownerdraw
- //
- LPDELETEITEMSTRUCT = ^DELETEITEMSTRUCT;
- {$EXTERNALSYM LPDELETEITEMSTRUCT}
- tagDELETEITEMSTRUCT = record
- CtlType: UINT;
- CtlID: UINT;
- itemID: UINT;
- hwndItem: HWND;
- itemData: ULONG_PTR;
- end;
- {$EXTERNALSYM tagDELETEITEMSTRUCT}
- DELETEITEMSTRUCT = tagDELETEITEMSTRUCT;
- {$EXTERNALSYM DELETEITEMSTRUCT}
- TDeleteItemStruct = DELETEITEMSTRUCT;
- PDeleteItemStruct = LPDELETEITEMSTRUCT;
- //
- // COMPAREITEMSTUCT for ownerdraw sorting
- //
- LPCOMPAREITEMSTRUCT = ^COMPAREITEMSTRUCT;
- {$EXTERNALSYM LPCOMPAREITEMSTRUCT}
- tagCOMPAREITEMSTRUCT = record
- CtlType: UINT;
- CtlID: UINT;
- hwndItem: HWND;
- itemID1: UINT;
- itemData1: ULONG_PTR;
- itemID2: UINT;
- itemData2: ULONG_PTR;
- dwLocaleId: DWORD;
- end;
- {$EXTERNALSYM tagCOMPAREITEMSTRUCT}
- COMPAREITEMSTRUCT = tagCOMPAREITEMSTRUCT;
- {$EXTERNALSYM COMPAREITEMSTRUCT}
- TCompareItemStruct = COMPAREITEMSTRUCT;
- PCompareItemStruct = LPCOMPAREITEMSTRUCT;
- //
- // Message Function Templates
- //
- function GetMessageA(lpMsg: LPMSG; hWnd: HWND; wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
- {$EXTERNALSYM GetMessageA}
- function GetMessageW(lpMsg: LPMSG; hWnd: HWND; wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
- {$EXTERNALSYM GetMessageW}
- {$IFDEF UNICODE}
- function GetMessage(lpMsg: LPMSG; hWnd: HWND; wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
- {$EXTERNALSYM GetMessage}
- {$ELSE}
- function GetMessage(lpMsg: LPMSG; hWnd: HWND; wMsgFilterMin, wMsgFilterMax: UINT): BOOL; stdcall;
- {$EXTERNALSYM GetMessage}
- {$ENDIF}
- function TranslateMessage(lpMsg: LPMSG): BOOL; stdcall;
- {$EXTERNALSYM TranslateMessage}
- function DispatchMessageA(lpMsg: LPMSG): LRESULT; stdcall;
- {$EXTERNALSYM DispatchMessageA}
- function DispatchMessageW(lpMsg: LPMSG): LRESULT; stdcall;
- {$EXTERNALSYM DispatchMessageW}
- {$IFDEF UNICODE}
- function DispatchMessage(lpMsg: LPMSG): LRESULT; stdcall;
- {$EXTERNALSYM DispatchMessage}
- {$ELSE}
- function DispatchMessage(lpMsg: LPMSG): LRESULT; stdcall;
- {$EXTERNALSYM DispatchMessage}
- {$ENDIF}
- function SetMessageQueue(cMessagesMax: Integer): BOOL; stdcall;
- {$EXTERNALSYM SetMessageQueue}
- function PeekMessageA(var lpMsg: MSG; hWnd: HWND;
- wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
- {$EXTERNALSYM PeekMessageA}
- function PeekMessageW(var lpMsg: MSG; hWnd: HWND;
- wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
- {$EXTERNALSYM PeekMessageW}
- {$IFDEF UNICODE}
- function PeekMessage(var lpMsg: MSG; hWnd: HWND;
- wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
- {$EXTERNALSYM PeekMessage}
- {$ELSE}
- function PeekMessage(var lpMsg: MSG; hWnd: HWND;
- wMsgFilterMin, wMsgFilterMax, wRemoveMsg: UINT): BOOL; stdcall;
- {$EXTERNALSYM PeekMessage}
- {$ENDIF}
- //
- // Queue status flags for GetQueueStatus() and MsgWaitForMultipleObjects()
- //
- const
- QS_KEY = $0001;
- {$EXTERNALSYM QS_KEY}
- QS_MOUSEMOVE = $0002;
- {$EXTERNALSYM QS_MOUSEMOVE}
- QS_MOUSEBUTTON = $0004;
- {$EXTERNALSYM QS_MOUSEBUTTON}
- QS_POSTMESSAGE = $0008;
- {$EXTERNALSYM QS_POSTMESSAGE}
- QS_TIMER = $0010;
- {$EXTERNALSYM QS_TIMER}
- QS_PAINT = $0020;
- {$EXTERNALSYM QS_PAINT}
- QS_SENDMESSAGE = $0040;
- {$EXTERNALSYM QS_SENDMESSAGE}
- QS_HOTKEY = $0080;
- {$EXTERNALSYM QS_HOTKEY}
- QS_ALLPOSTMESSAGE = $0100;
- {$EXTERNALSYM QS_ALLPOSTMESSAGE}
- QS_RAWINPUT = $0400;
- {$EXTERNALSYM QS_RAWINPUT}
- QS_MOUSE = (QS_MOUSEMOVE or QS_MOUSEBUTTON);
- {$EXTERNALSYM QS_MOUSE}
- QS_INPUT = (QS_MOUSE or QS_KEY {$IFDEF WINDOWSXP}or QS_RAWINPUT{$ENDIF});
- {$EXTERNALSYM QS_INPUT}
- QS_ALLEVENTS = (QS_INPUT or QS_POSTMESSAGE or QS_TIMER or QS_PAINT or QS_HOTKEY);
- {$EXTERNALSYM QS_ALLEVENTS}
- QS_ALLINPUT = (QS_INPUT or QS_POSTMESSAGE or QS_TIMER or QS_PAINT or
- QS_HOTKEY or QS_SENDMESSAGE);
- {$EXTERNALSYM QS_ALLINPUT}
- //
- // PeekMessage() Options
- //
- const
- PM_NOREMOVE = $0000;
- {$EXTERNALSYM PM_NOREMOVE}
- PM_REMOVE = $0001;
- {$EXTERNALSYM PM_REMOVE}
- PM_NOYIELD = $0002;
- {$EXTERNALSYM PM_NOYIELD}
- PM_QS_INPUT = (QS_INPUT shl 16);
- {$EXTERNALSYM PM_QS_INPUT}
- PM_QS_POSTMESSAGE = ((QS_POSTMESSAGE or QS_HOTKEY or QS_TIMER) shl 16);
- {$EXTERNALSYM PM_QS_POSTMESSAGE}
- PM_QS_PAINT = (QS_PAINT shl 16);
- {$EXTERNALSYM PM_QS_PAINT}
- PM_QS_SENDMESSAGE = (QS_SENDMESSAGE shl 16);
- {$EXTERNALSYM PM_QS_SENDMESSAGE}
- function RegisterHotKey(hWnd: HWND; id: Integer; fsModifiers, vk: UINT): BOOL; stdcall;
- {$EXTERNALSYM RegisterHotKey}
- function UnregisterHotKey(hWnd: HWND; id: Integer): BOOL; stdcall;
- {$EXTERNALSYM UnregisterHotKey}
- const
- MOD_ALT = $0001;
- {$EXTERNALSYM MOD_ALT}
- MOD_CONTROL = $0002;
- {$EXTERNALSYM MOD_CONTROL}
- MOD_SHIFT = $0004;
- {$EXTERNALSYM MOD_SHIFT}
- MOD_WIN = $0008;
- {$EXTERNALSYM MOD_WIN}
- IDHOT_SNAPWINDOW = DWORD(-1); // SHIFT-PRINTSCRN
- {$EXTERNALSYM IDHOT_SNAPWINDOW}
- IDHOT_SNAPDESKTOP = DWORD(-2); // PRINTSCRN
- {$EXTERNALSYM IDHOT_SNAPDESKTOP}
- const
- ENDSESSION_LOGOFF = DWORD($80000000);
- {$EXTERNALSYM ENDSESSION_LOGOFF}
- EWX_LOGOFF = 0;
- {$EXTERNALSYM EWX_LOGOFF}
- EWX_SHUTDOWN = $00000001;
- {$EXTERNALSYM EWX_SHUTDOWN}
- EWX_REBOOT = $00000002;
- {$EXTERNALSYM EWX_REBOOT}
- EWX_FORCE = $00000004;
- {$EXTERNALSYM EWX_FORCE}
- EWX_POWEROFF = $00000008;
- {$EXTERNALSYM EWX_POWEROFF}
- EWX_FORCEIFHUNG = $00000010;
- {$EXTERNALSYM EWX_FORCEIFHUNG}
- function ExitWindows(dwReserved: DWORD; uREserved: UINT): BOOL;
- {$EXTERNALSYM ExitWindows}
- function ExitWindowsEx(uFlags: UINT; dwReserved: DWORD): BOOL; stdcall;
- {$EXTERNALSYM ExitWindowsEx}
- function SwapMouseButton(fSwap: BOOL): BOOL; stdcall;
- {$EXTERNALSYM SwapMouseButton}
- function GetMessagePos: DWORD; stdcall;
- {$EXTERNALSYM GetMessagePos}
- function GetMessageTime: LONG; stdcall;
- {$EXTERNALSYM GetMessageTime}
- function GetMessageExtraInfo: LPARAM; stdcall;
- {$EXTERNALSYM GetMessageExtraInfo}
- function SetMessageExtraInfo(lParam: LPARAM): LPARAM; stdcall;
- {$EXTERNALSYM SetMessageExtraInfo}
- function SendMessageA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageA}
- function SendMessageW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageW}
- {$IFDEF UNICODE}
- function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM SendMessage}
- {$ELSE}
- function SendMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM SendMessage}
- {$ENDIF}
- function SendMessageTimeoutA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- fuFlags, uTimeout: UINT; var lpdwResult: DWORD_PTR): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageTimeoutA}
- function SendMessageTimeoutW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- fuFlags, uTimeout: UINT; var lpdwResult: DWORD_PTR): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageTimeoutW}
- {$IFDEF UNICODE}
- function SendMessageTimeout(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- fuFlags, uTimeout: UINT; var lpdwResult: DWORD_PTR): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageTimeout}
- {$ELSE}
- function SendMessageTimeout(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- fuFlags, uTimeout: UINT; var lpdwResult: DWORD_PTR): LRESULT; stdcall;
- {$EXTERNALSYM SendMessageTimeout}
- {$ENDIF}
- function SendNotifyMessageA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM SendNotifyMessageA}
- function SendNotifyMessageW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM SendNotifyMessageW}
- {$IFDEF UNICODE}
- function SendNotifyMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM SendNotifyMessage}
- {$ELSE}
- function SendNotifyMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM SendNotifyMessage}
- {$ENDIF}
- function SendMessageCallbackA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- lpResultCallBack: SENDASYNCPROC; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM SendMessageCallbackA}
- function SendMessageCallbackW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- lpResultCallBack: SENDASYNCPROC; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM SendMessageCallbackW}
- {$IFDEF UNICODE}
- function SendMessageCallback(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- lpResultCallBack: SENDASYNCPROC; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM SendMessageCallback}
- {$ELSE}
- function SendMessageCallback(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM;
- lpResultCallBack: SENDASYNCPROC; dwData: ULONG_PTR): BOOL; stdcall;
- {$EXTERNALSYM SendMessageCallback}
- {$ENDIF}
- type
- BSMINFO = record
- cbSize: UINT;
- hdesk: HDESK;
- hwnd: HWND;
- luid: LUID;
- end;
- {$EXTERNALSYM BSMINFO}
- PBSMINFO = ^BSMINFO;
- TBsmInfo = BSMINFO;
- function BroadcastSystemMessageExA(dwFlags: DWORD; lpwRecipients: LPDWORD; uiMessage: UINT;
- wParam: WPARAM; lParam: LPARAM; pBSMInfo: PBSMINFO): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageExA}
- function BroadcastSystemMessageExW(dwFlags: DWORD; lpwRecipients: LPDWORD; uiMessage: UINT;
- wParam: WPARAM; lParam: LPARAM; pBSMInfo: PBSMINFO): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageExW}
- {$IFDEF UNICODE}
- function BroadcastSystemMessageEx(dwFlags: DWORD; lpwRecipients: LPDWORD; uiMessage: UINT;
- wParam: WPARAM; lParam: LPARAM; pBSMInfo: PBSMINFO): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageEx}
- {$ELSE}
- function BroadcastSystemMessageEx(dwFlags: DWORD; lpwRecipients: LPDWORD; uiMessage: UINT;
- wParam: WPARAM; lParam: LPARAM; pBSMInfo: PBSMINFO): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageEx}
- {$ENDIF}
- function BroadcastSystemMessageA(dwFlags: DWORD; lpdwRecipients: LPDWORD;
- uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageA}
- function BroadcastSystemMessageW(dwFlags: DWORD; lpdwRecipients: LPDWORD;
- uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessageW}
- {$IFDEF UNICODE}
- function BroadcastSystemMessage(dwFlags: DWORD; lpdwRecipients: LPDWORD;
- uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessage}
- {$ELSE}
- function BroadcastSystemMessage(dwFlags: DWORD; lpdwRecipients: LPDWORD;
- uiMessage: UINT; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
- {$EXTERNALSYM BroadcastSystemMessage}
- {$ENDIF}
- //Broadcast Special Message Recipient list
- const
- BSM_ALLCOMPONENTS = $00000000;
- {$EXTERNALSYM BSM_ALLCOMPONENTS}
- BSM_VXDS = $00000001;
- {$EXTERNALSYM BSM_VXDS}
- BSM_NETDRIVER = $00000002;
- {$EXTERNALSYM BSM_NETDRIVER}
- BSM_INSTALLABLEDRIVERS = $00000004;
- {$EXTERNALSYM BSM_INSTALLABLEDRIVERS}
- BSM_APPLICATIONS = $00000008;
- {$EXTERNALSYM BSM_APPLICATIONS}
- BSM_ALLDESKTOPS = $00000010;
- {$EXTERNALSYM BSM_ALLDESKTOPS}
- //Broadcast Special Message Flags
- BSF_QUERY = $00000001;
- {$EXTERNALSYM BSF_QUERY}
- BSF_IGNORECURRENTTASK = $00000002;
- {$EXTERNALSYM BSF_IGNORECURRENTTASK}
- BSF_FLUSHDISK = $00000004;
- {$EXTERNALSYM BSF_FLUSHDISK}
- BSF_NOHANG = $00000008;
- {$EXTERNALSYM BSF_NOHANG}
- BSF_POSTMESSAGE = $00000010;
- {$EXTERNALSYM BSF_POSTMESSAGE}
- BSF_FORCEIFHUNG = $00000020;
- {$EXTERNALSYM BSF_FORCEIFHUNG}
- BSF_NOTIMEOUTIFNOTHUNG = $00000040;
- {$EXTERNALSYM BSF_NOTIMEOUTIFNOTHUNG}
- BSF_ALLOWSFW = $00000080;
- {$EXTERNALSYM BSF_ALLOWSFW}
- BSF_SENDNOTIFYMESSAGE = $00000100;
- {$EXTERNALSYM BSF_SENDNOTIFYMESSAGE}
- BSF_RETURNHDESK = $00000200;
- {$EXTERNALSYM BSF_RETURNHDESK}
- BSF_LUID = $00000400;
- {$EXTERNALSYM BSF_LUID}
- BROADCAST_QUERY_DENY = $424D5144; // Return this value to deny a query.
- {$EXTERNALSYM BROADCAST_QUERY_DENY}
- // RegisterDeviceNotification
- type
- HDEVNOTIFY = PVOID;
- {$EXTERNALSYM HDEVNOTIFY}
- PHDEVNOTIFY = ^HDEVNOTIFY;
- {$EXTERNALSYM PHDEVNOTIFY}
- const
- DEVICE_NOTIFY_WINDOW_HANDLE = $00000000;
- {$EXTERNALSYM DEVICE_NOTIFY_WINDOW_HANDLE}
- DEVICE_NOTIFY_SERVICE_HANDLE = $00000001;
- {$EXTERNALSYM DEVICE_NOTIFY_SERVICE_HANDLE}
- DEVICE_NOTIFY_ALL_INTERFACE_CLASSES = $00000004;
- {$EXTERNALSYM DEVICE_NOTIFY_ALL_INTERFACE_CLASSES}
- function RegisterDeviceNotificationA(hRecipient: HANDLE; NotificationFilter: LPVOID;
- Flags: DWORD): HDEVNOTIFY; stdcall;
- {$EXTERNALSYM RegisterDeviceNotificationA}
- function RegisterDeviceNotificationW(hRecipient: HANDLE; NotificationFilter: LPVOID;
- Flags: DWORD): HDEVNOTIFY; stdcall;
- {$EXTERNALSYM RegisterDeviceNotificationW}
- {$IFDEF UNICODE}
- function RegisterDeviceNotification(hRecipient: HANDLE; NotificationFilter: LPVOID;
- Flags: DWORD): HDEVNOTIFY; stdcall;
- {$EXTERNALSYM RegisterDeviceNotification}
- {$ELSE}
- function RegisterDeviceNotification(hRecipient: HANDLE; NotificationFilter: LPVOID;
- Flags: DWORD): HDEVNOTIFY; stdcall;
- {$EXTERNALSYM RegisterDeviceNotification}
- {$ENDIF}
- function UnregisterDeviceNotification(Handle: HDEVNOTIFY): BOOL; stdcall;
- {$EXTERNALSYM UnregisterDeviceNotification}
- function PostMessageA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostMessageA}
- function PostMessageW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostMessageW}
- {$IFDEF UNICODE}
- function PostMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostMessage}
- {$ELSE}
- function PostMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostMessage}
- {$ENDIF}
- function PostThreadMessageA(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostThreadMessageA}
- function PostThreadMessageW(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostThreadMessageW}
- {$IFDEF UNICODE}
- function PostThreadMessage(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostThreadMessage}
- {$ELSE}
- function PostThreadMessage(idThread: DWORD; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;
- {$EXTERNALSYM PostThreadMessage}
- {$ENDIF}
- function PostAppMessageA(idThread: DWORD; wMsg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL;
- {$EXTERNALSYM PostAppMessageA}
- function PostAppMessageW(idThread: DWORD; wMsg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL;
- {$EXTERNALSYM PostAppMessageW}
- {$IFDEF UNICODE}
- function PostAppMessage(idThread: DWORD; wMsg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL;
- {$EXTERNALSYM PostAppMessage}
- {$ELSE}
- function PostAppMessage(idThread: DWORD; wMsg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL;
- {$EXTERNALSYM PostAppMessage}
- {$ENDIF}
- //
- // Special HWND value for use with PostMessage() and SendMessage()
- //
- const
- HWND_BROADCAST = HWND($ffff);
- {$EXTERNALSYM HWND_BROADCAST}
- HWND_MESSAGE = HWND(-3);
- {$EXTERNALSYM HWND_MESSAGE}
- function AttachThreadInput(idAttach, idAttachTo: DWORD; fAttach: BOOL): BOOL; stdcall;
- {$EXTERNALSYM AttachThreadInput}
- function ReplyMessage(lResult: LRESULT): BOOL; stdcall;
- {$EXTERNALSYM ReplyMessage}
- function WaitMessage: BOOL; stdcall;
- {$EXTERNALSYM WaitMessage}
- function WaitForInputIdle(hProcess: HANDLE; dwMilliseconds: DWORD): DWORD; stdcall;
- {$EXTERNALSYM WaitForInputIdle}
- function DefWindowProcA(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM DefWindowProcA}
- function DefWindowProcW(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM DefWindowProcW}
- {$IFDEF UNICODE}
- function DefWindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM DefWindowProc}
- {$ELSE}
- function DefWindowProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM DefWindowProc}
- {$ENDIF}
- procedure PostQuitMessage(nExitCode: Integer); stdcall;
- {$EXTERNALSYM PostQuitMessage}
- function CallWindowProcA(lpPrevWndFunc: WNDPROC; hWnd: HWND; Msg: UINT;
- wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM CallWindowProcA}
- function CallWindowProcW(lpPrevWndFunc: WNDPROC; hWnd: HWND; Msg: UINT;
- wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM CallWindowProcW}
- {$IFDEF UNICODE}
- function CallWindowProc(lpPrevWndFunc: WNDPROC; hWnd: HWND; Msg: UINT;
- wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM CallWindowProc}
- {$ELSE}
- function CallWindowProc(lpPrevWndFunc: WNDPROC; hWnd: HWND; Msg: UINT;
- wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
- {$EXTERNALSYM CallWindowProc}
- {$ENDIF}
- function InSendMessage: BOOL; stdcall;
- {$EXTERNALSYM InSendMessage}
- function InSendMessageEx(lpReserved: LPVOID): DWORD; stdcall;
- {$EXTERNALSYM InSendMessageEx}
- //
- // InSendMessageEx return value
- //
- const
- ISMEX_NOSEND = $00000000;
- {$EXTERNALSYM ISMEX_NOSEND}
- ISMEX_SEND = $00000001;
- {$EXTERNALSYM ISMEX_SEND}
- ISMEX_NOTIFY = $00000002;
- {$EXTERNALSYM ISMEX_NOTIFY}
- ISMEX_CALLBACK = $00000004;
- {$EXTERNALSYM ISMEX_CALLBACK}
- ISMEX_REPLIED = $00000008;
- {$EXTERNALSYM ISMEX_REPLIED}
- function GetDoubleClickTime: UINT; stdcall;
- {$EXTERNALSYM GetDoubleClickTime}
- function SetDoubleClickTime(uInterval: UINT): BOOL; stdcall;
- {$EXTERNALSYM SetDoubleClickTime}
- function RegisterClassA(const lpWndClass: WNDCLASSA): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassA}
- function RegisterClassW(const lpWndClass: WNDCLASSW): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassW}
- {$IFDEF UNICODE}
- function RegisterClass(const lpWndClass: WNDCLASSW): ATOM; stdcall;
- {$EXTERNALSYM RegisterClass}
- {$ELSE}
- function RegisterClass(const lpWndClass: WNDCLASSA): ATOM; stdcall;
- {$EXTERNALSYM RegisterClass}
- {$ENDIF}
- function UnregisterClassA(lpClassName: LPCSTR; hInstance: HINSTANCE): BOOL; stdcall;
- {$EXTERNALSYM UnregisterClassA}
- function UnregisterClassW(lpClassName: LPCWSTR; hInstance: HINSTANCE): BOOL; stdcall;
- {$EXTERNALSYM UnregisterClassW}
- {$IFDEF UNICODE}
- function UnregisterClass(lpClassName: LPCWSTR; hInstance: HINSTANCE): BOOL; stdcall;
- {$EXTERNALSYM UnregisterClass}
- {$ELSE}
- function UnregisterClass(lpClassName: LPCSTR; hInstance: HINSTANCE): BOOL; stdcall;
- {$EXTERNALSYM UnregisterClass}
- {$ENDIF}
- function GetClassInfoA(hInstance: HINSTANCE; lpClassName: LPCSTR;
- var lpWndClass: WNDCLASSA): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoA}
- function GetClassInfoW(hInstance: HINSTANCE; lpClassName: LPCWSTR;
- var lpWndClass: WNDCLASSW): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoW}
- {$IFDEF UNICODE}
- function GetClassInfo(hInstance: HINSTANCE; lpClassName: LPCWSTR;
- var lpWndClass: WNDCLASSW): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfo}
- {$ELSE}
- function GetClassInfo(hInstance: HINSTANCE; lpClassName: LPCSTR;
- var lpWndClass: WNDCLASSA): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfo}
- {$ENDIF}
- function RegisterClassExA(const lpwcx: WNDCLASSEXA): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassExA}
- function RegisterClassExW(const lpwcx: WNDCLASSEXW): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassExW}
- {$IFDEF UNICODE}
- function RegisterClassEx(const lpwcx: WNDCLASSEXW): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassEx}
- {$ELSE}
- function RegisterClassEx(const lpwcx: WNDCLASSEXA): ATOM; stdcall;
- {$EXTERNALSYM RegisterClassEx}
- {$ENDIF}
- function GetClassInfoExA(hinst: HINSTANCE; lpszClass: LPCSTR; var lpwcx: WNDCLASSEXA): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoExA}
- function GetClassInfoExW(hinst: HINSTANCE; lpszClass: LPCWSTR; var lpwcx: WNDCLASSEXW): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoExW}
- {$IFDEF UNICODE}
- function GetClassInfoEx(hinst: HINSTANCE; lpszClass: LPCWSTR; var lpwcx: WNDCLASSEXW): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoEx}
- {$ELSE}
- function GetClassInfoEx(hinst: HINSTANCE; lpszClass: LPCSTR; var lpwcx: WNDCLASSEXA): BOOL; stdcall;
- {$EXTERNALSYM GetClassInfoEx}
- {$ENDIF}
- const
- CW_USEDEFAULT = Integer($80000000);
- {$EXTERNALSYM CW_USEDEFAULT}
- //
- // Special value for CreateWindow, et al.
- //
- const
- HWND_DESKTOP = HWND(0);
- {$EXTERNALSYM HWND_DESKTOP}
- type
- PREGISTERCLASSNAMEW = function (p: LPCWSTR): LongBool; stdcall;
- {$EXTERNALSYM PREGISTERCLASSNAMEW}
- function CreateWindowExA(dwExStyle: DWORD; lpClassName, lpWindowName: LPCSTR;
- dwStyle: DWORD; X, Y, nWidth, nHeight: Integer; hWndParent: HWND;
- hMenu: HMENU; hInstance: HINSTANCE; lpParam: LPVOID): HWND; stdcall;
- {$EXTERNALSYM CreateWindowExA}
- function CreateWindowExW(dwExStyle: DWORD; lpClassName, lpWindowName: LPCWSTR;
- dwStyle: DWORD; X, Y, nWidth, nHeight: Integer; hWndParent: HWND;
- hMenu: HMENU; hInstance: HINSTANCE; lpParam: LPVOID): HWND; stdcall;
- {$EXTERNALSYM CreateWindowExW}
- {$IFDEF UNICODE}
- function CreateWindowEx(dwExStyle: DWORD; lpClassName, lpWindowName: LPCWSTR;
- dwStyle: DWORD; X, Y, nWidth, nHeight: Integer; hWndParent: HWND;
- hMenu: HMENU; hInstance: HINSTANCE; lpParam: LPVOID): HWND; stdcall;
- {$EXTERNALSYM CreateWindowEx}
- {$ELSE}
- function CreateWindowEx(dwExStyle: DWORD; lpClassName, lpWindowName: LPCSTR;
- dwStyle: DWORD; X, Y, nWidth, nHeight: Integer; hWndParent: HWND;
- hMenu: HMENU; hInstance: HINSTANCE; lpParam: LPVOID): HWND; stdcall;
- {$EXTERNALSYM CreateWindowEx}
- {$ENDIF}
- function CreateWindowA(lpClassName, lpWindowName: LPCSTR; dwStyle: DWORD;
- x, y, nWidth, nHeight: Integer; hWndParent: HWND; hMenu: HMENU;
- hInstance: HINSTANCE; lpParam: LPVOID): HWND;
- {$EXTERNALSYM CreateWindowA}
- function CreateWindowW(lpClassName, lpWindowName: LPCWSTR; dwStyle: DWORD;
- x, y, nWidth, nHeight: Integer; hWndParent: HWND; hMenu: HMENU;
- hInstance: HINSTANCE; lpParam: LPVOID): HWND;
- {$EXTERNALSYM CreateWindowW}
- {$IFDEF UNICODE}
- function CreateWindow(lpClassName, lpWindowName: LPCWSTR; dwStyle: DWORD;
- x, y, nWidth, nHeight: Integer; hWndParent: HWND; hMenu: HMENU;
- hInstance: HINSTANCE; lpParam: LPVOID): HWND;
- {$EXTERNALSYM CreateWindow}
- {$ELSE}
- function CreateWindow(lpClassName, lpWindowName: LPCSTR; dwStyle: DWORD;
- x, y, nWidth, nHeight: Integer; hWndParent: HWND; hMenu: HMENU;
- hInstance: HINSTANCE; lpParam: LPVOID): HWND;
- {$EXTERNALSYM CreateWindow}
- {$ENDIF}
- function IsWindow(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsWindow}
- function IsMenu(hMenu: HMENU): BOOL; stdcall;
- {$EXTERNALSYM IsMenu}
- function IsChild(hWndParent, hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsChild}
- function DestroyWindow(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM DestroyWindow}
- function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL; stdcall;
- {$EXTERNALSYM ShowWindow}
- function AnimateWindow(hWnd: HWND; dwTime, dwFlags: DWORD): BOOL; stdcall;
- {$EXTERNALSYM AnimateWindow}
- function UpdateLayeredWindow(hWnd: HWND; hdcDst: HDC; pptDst: LPPOINT;
- psize: LPSIZE; hdcSrc: HDC; pptSrc: LPPOINT; crKey: COLORREF;
- pblend: LPBLENDFUNCTION; dwFlags: DWORD): BOOL; stdcall;
- {$EXTERNALSYM UpdateLayeredWindow}
- function GetLayeredWindowAttributes(hwnd: HWND; pcrKey: LPCOLORREF; pbAlpha: LPBYTE;
- pdwFlags: LPWORD): BOOL; stdcall;
- {$EXTERNALSYM GetLayeredWindowAttributes}
- const
- PW_CLIENTONLY = $00000001;
- {$EXTERNALSYM PW_CLIENTONLY}
- function PrintWindow(hwnd: HWND; hdcBlt: HDC; nFlags: UINT): BOOL; stdcall;
- {$EXTERNALSYM PrintWindow}
- function SetLayeredWindowAttributes(hwnd: HWND; crKey: COLORREF; bAlpha: BYTE;
- dwFlags: DWORD): BOOL; stdcall;
- {$EXTERNALSYM SetLayeredWindowAttributes}
- const
- LWA_COLORKEY = $00000001;
- {$EXTERNALSYM LWA_COLORKEY}
- LWA_ALPHA = $00000002;
- {$EXTERNALSYM LWA_ALPHA}
- ULW_COLORKEY = $00000001;
- {$EXTERNALSYM ULW_COLORKEY}
- ULW_ALPHA = $00000002;
- {$EXTERNALSYM ULW_ALPHA}
- ULW_OPAQUE = $00000004;
- {$EXTERNALSYM ULW_OPAQUE}
- function ShowWindowAsync(hWnd: HWND; nCmdShow: Integer): BOOL; stdcall;
- {$EXTERNALSYM ShowWindowAsync}
- function FlashWindow(hWnd: HWND; bInvert: BOOL): BOOL; stdcall;
- {$EXTERNALSYM FlashWindow}
- type
- PFLASH_INFO = ^FLASH_INFO;
- {$EXTERNALSYM PFLASH_INFO}
- FLASH_INFO = record
- cbSize: UINT;
- hwnd: HWND;
- dwFlags: DWORD;
- uCount: UINT;
- dwTimeout: DWORD;
- end;
- {$EXTERNALSYM FLASH_INFO}
- TFlashInfo = FLASH_INFO;
- PFlashInfo = PFLASH_INFO;
- function FlashWindowEx(var pfwi: FLASH_INFO): BOOL; stdcall;
- {$EXTERNALSYM FlashWindowEx}
- const
- FLASHW_STOP = 0;
- {$EXTERNALSYM FLASHW_STOP}
- FLASHW_CAPTION = $00000001;
- {$EXTERNALSYM FLASHW_CAPTION}
- FLASHW_TRAY = $00000002;
- {$EXTERNALSYM FLASHW_TRAY}
- FLASHW_ALL = (FLASHW_CAPTION or FLASHW_TRAY);
- {$EXTERNALSYM FLASHW_ALL}
- FLASHW_TIMER = $00000004;
- {$EXTERNALSYM FLASHW_TIMER}
- FLASHW_TIMERNOFG = $0000000C;
- {$EXTERNALSYM FLASHW_TIMERNOFG}
- function ShowOwnedPopups(hWnd: HWND; fShow: BOOL): BOOL; stdcall;
- {$EXTERNALSYM ShowOwnedPopups}
- function OpenIcon(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM OpenIcon}
- function CloseWindow(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM CloseWindow}
- function MoveWindow(hWnd: HWND; X, Y, nWidth, nHeight: Integer; bRepaint: BOOL): BOOL; stdcall;
- {$EXTERNALSYM MoveWindow}
- function SetWindowPos(hWnd, hWndInsertAfter: HWND; X, Y, cx, cy: Integer;
- uFlags: UINT): BOOL; stdcall;
- {$EXTERNALSYM SetWindowPos}
- function GetWindowPlacement(hWnd: HWND; var lpwndpl: WINDOWPLACEMENT): BOOL; stdcall;
- {$EXTERNALSYM GetWindowPlacement}
- function SetWindowPlacement(hWnd: HWND; const lpwndpl: WINDOWPLACEMENT): BOOL; stdcall;
- {$EXTERNALSYM SetWindowPlacement}
- function BeginDeferWindowPos(nNumWindows: Integer): HDWP; stdcall;
- {$EXTERNALSYM BeginDeferWindowPos}
- function DeferWindowPos(hWinPosInfo: HDWP; hWnd, hWndInsertAfter: HWND;
- x, y, cx, cy: Integer; uFlags: UINT): HDWP; stdcall;
- {$EXTERNALSYM DeferWindowPos}
- function EndDeferWindowPos(hWinPosInfo: HDWP): BOOL; stdcall;
- {$EXTERNALSYM EndDeferWindowPos}
- function IsWindowVisible(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsWindowVisible}
- function IsIconic(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsIconic}
- function AnyPopup: BOOL; stdcall;
- {$EXTERNALSYM AnyPopup}
- function BringWindowToTop(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM BringWindowToTop}
- function IsZoomed(hWnd: HWND): BOOL; stdcall;
- {$EXTERNALSYM IsZoomed}
- //
- // SetWindowPos Flags
- //
- const
- SWP_NOSIZE = $0001;
- {$EXTERNALSYM SWP_NOSIZE}
- SWP_NOMOVE = $0002;
- {$EXTERNALSYM SWP_NOMOVE}
- SWP_NOZORDER = $0004;
- {$EXTERNALSYM SWP_NOZORDER}
- SWP_NOREDRAW = $0008;
- {$EXTERNALSYM SWP_NOREDRAW}
- SWP_NOACTIVATE = $0010;
- {$EXTERNALSYM SWP_NOACTIVATE}
- SWP_FRAMECHANGED = $0020; // The frame changed: send WM_NCCALCSIZE
- {$EXTERNALSYM SWP_FRAMECHANGED}
- SWP_SHOWWINDOW = $0040;
- {$EXTERNALSYM SWP_SHOWWINDOW}
- SWP_HIDEWINDOW = $0080;
- {$EXTERNALSYM SWP_HIDEWINDOW}
- SWP_NOCOPYBITS = $0100;
- {$EXTERNALSYM SWP_NOCOPYBITS}
- SWP_NOOWNERZORDER = $0200; // Don't do owner Z ordering
- {$EXTERNALSYM SWP_NOOWNERZORDER}
- SWP_NOSENDCHANGING = $0400; // Don't send WM_WINDOWPOSCHANGING
- {$EXTERNALSYM SWP_NOSENDCHANGING}
- SWP_DRAWFRAME = SWP_FRAMECHANGED;
- {$EXTERNALSYM SWP_DRAWFRAME}
- SWP_NOREPOSITION = SWP_NOOWNERZORDER;
- {$EXTERNALSYM SWP_NOREPOSITION}
- SWP_DEFERERASE = $2000;
- {$EXTERNALSYM SWP_DEFERERASE}
- SWP_ASYNCWINDOWPOS = $4000;
- {$EXTERNALSYM SWP_ASYNCWINDOWPOS}
- HWND_TOP = HWND(0);
- {$EXTERNALSYM HWND_TOP}
- HWND_BOTTOM = HWND(1);
- {$EXTERNALSYM HWND_BOTTOM}
- HWND_TOPMOST = HWND(-1);
- {$EXTERNALSYM HWND_TOPMOST}
- HWND_NOTOPMOST = HWND(-2);
- {$EXTERNALSYM HWND_NOTOPMOST}
- //
- // WARNING:
- // The following structures must NOT be DWORD padded because they are
- // followed by strings, etc that do not have to be DWORD aligned.
- //
- // #include <pshpack2.h>
- //