home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / sibdemo3.zip / SOURCE.DAT / SOURCE / WIN32 / WINUSER.PAS < prev   
Pascal/Delphi Source File  |  1998-05-15  |  163KB  |  3,684 lines

  1. UNIT WinUser;
  2.  
  3. {*********************************************************************************************************
  4.  *                                                                                                       *
  5.  *                                                                                                       *
  6.  * Win32 USER, Win32 and DAX                                                                             *
  7.  *                                                                                                       *
  8.  *********************************************************************************************************}
  9.  
  10.  
  11. INTERFACE
  12.  
  13. USES WinNt,WinDef,WinBase;
  14.  
  15. TYPE
  16.     HDWP=HANDLE;
  17.     MENUTEMPLATE=POINTER;
  18.     LPMENUTEMPLATE=POINTER;
  19.  
  20. TYPE
  21.     WndProc=FUNCTION(ahwnd:HWND;msg:ULONG;para1:WPARAM;para2:LPARAM):LRESULT;APIENTRY;
  22.     DlgProc=FUNCTION(ahwnd:HWND;msg:ULONG;para1:WPARAM;para2:LPARAM):BOOL;APIENTRY;
  23.     TimerProc=PROCEDURE(ahwnd:HWND;msg:ULONG;para1,para2:ULONG);APIENTRY;
  24.     GrayStringProc=FUNCTION(ahdc:HDC;para1:LPARAM;para2:LONGINT):BOOL;APIENTRY;
  25.     WndEnumProc=FUNCTION(ahwnd:HWND;para:LPARAM):BOOL;APIENTRY;
  26.     HookProc=FUNCTION(code:LONGINT;para1:WPARAM;para2:LPARAM):LRESULT;APIENTRY;
  27.     SendAsyncProc=PROCEDURE(ahwnd:HWND;msg:ULONG;para1:ULONG;result:LRESULT);APIENTRY;
  28.     PropEnumProc=FUNCTION(ahwnd:HWND;CONST str:CSTRING;ahandle:HANDLE):BOOL;APIENTRY;
  29.     PropEnumProcEx=FUNCTION(ahwnd:HWND;CONST str:CSTRING;ahandle:HANDLE;para:ULONG):BOOL;APIENTRY;
  30.     EditWordBreakProc=FUNCTION(VAR lpch:CSTRING;ichCurrent,cch,code:LONGINT):LONGINT;APIENTRY;
  31.  
  32.  
  33. CONST
  34.      {Predefined Resource Types}
  35.      RT_CURSOR           =1;
  36.      RT_BITMAP           =2;
  37.      RT_ICON             =3;
  38.      RT_MENU             =4;
  39.      RT_DIALOG           =5;
  40.      RT_STRING           =6;
  41.      RT_FONTDIR          =7;
  42.      RT_FONT             =8;
  43.      RT_ACCELERATOR      =9;
  44.      RT_RCDATA           =10;
  45.      RT_MESSAGETABLE     =11;
  46.      DIFFERENCE          =11;
  47.      RT_GROUP_CURSOR     =RT_CURSOR + DIFFERENCE;
  48.      RT_GROUP_ICON       =RT_ICON + DIFFERENCE;
  49.      RT_VERSION          =16;
  50.      RT_DLGINCLUDE       =17;
  51.  
  52. CONST
  53.      SB_HORZ             =0;
  54.      SB_VERT             =1;
  55.      SB_CTL              =2;
  56.      SB_BOTH             =3;
  57.      SB_LINEUP           =0;
  58.      SB_LINELEFT         =0;
  59.      SB_LINEDOWN         =1;
  60.      SB_LINERIGHT        =1;
  61.      SB_PAGEUP           =2;
  62.      SB_PAGELEFT         =2;
  63.      SB_PAGEDOWN         =3;
  64.      SB_PAGERIGHT        =3;
  65.      SB_THUMBPOSITION    =4;
  66.      SB_THUMBTRACK       =5;
  67.      SB_TOP              =6;
  68.      SB_LEFT             =6;
  69.      SB_BOTTOM           =7;
  70.      SB_RIGHT            =7;
  71.      SB_ENDSCROLL        =8;
  72.  
  73. CONST
  74.      SW_HIDE             =0;
  75.      SW_SHOWNORMAL       =1;
  76.      SW_NORMAL           =1;
  77.      SW_SHOWMINIMIZED    =2;
  78.      SW_SHOWMAXIMIZED    =3;
  79.      SW_MAXIMIZE         =3;
  80.      SW_SHOWNOACTIVATE   =4;
  81.      SW_SHOW             =5;
  82.      SW_MINIMIZE         =6;
  83.      SW_SHOWMINNOACTIVE  =7;
  84.      SW_SHOWNA           =8;
  85.      SW_RESTORE          =9;
  86.      SW_SHOWDEFAULT      =10;
  87.      SW_MAX              =10;
  88.  
  89. CONST
  90.      HIDE_WINDOW         =0;
  91.      SHOW_OPENWINDOW     =1;
  92.      SHOW_ICONWINDOW     =2;
  93.      SHOW_FULLSCREEN     =3;
  94.      SHOW_OPENNOACTIVATE =4;
  95.  
  96. CONST
  97.      SW_PARENTCLOSING    =1;
  98.      SW_OTHERZOOM        =2;
  99.      SW_PARENTOPENING    =3;
  100.      SW_OTHERUNZOOM      =4;
  101.  
  102. CONST
  103.      KF_EXTENDED         =$0100;
  104.      KF_DLGMODE          =$0800;
  105.      KF_MENUMODE         =$1000;
  106.      KF_ALTDOWN          =$2000;
  107.      KF_REPEAT           =$4000;
  108.      KF_UP               =$8000;
  109.  
  110. CONST
  111.      VK_LBUTTON        =$01;
  112.      VK_RBUTTON        =$02;
  113.      VK_CANCEL         =$03;
  114.      VK_MBUTTON        =$04;
  115.      VK_BACK           =$08;
  116.      VK_TAB            =$09;
  117.      VK_CLEAR          =$0C;
  118.      VK_RETURN         =$0D;
  119.      VK_SHIFT          =$10;
  120.      VK_CONTROL        =$11;
  121.      VK_MENU           =$12;
  122.      VK_PAUSE          =$13;
  123.      VK_CAPITAL        =$14;
  124.      VK_ESCAPE         =$1B;
  125.      VK_SPACE          =$20;
  126.      VK_PRIOR          =$21;
  127.      VK_NEXT           =$22;
  128.      VK_END            =$23;
  129.      VK_HOME           =$24;
  130.      VK_LEFT           =$25;
  131.      VK_UP             =$26;
  132.      VK_RIGHT          =$27;
  133.      VK_DOWN           =$28;
  134.      VK_SELECT         =$29;
  135.      VK_PRINT          =$2A;
  136.      VK_EXECUTE        =$2B;
  137.      VK_SNAPSHOT       =$2C;
  138.      VK_INSERT         =$2D;
  139.      VK_DELETE         =$2E;
  140.      VK_HELP           =$2F;
  141.      VK_LWIN           =$5B;
  142.      VK_RWIN           =$5C;
  143.      VK_APPS           =$5D;
  144.      VK_NUMPAD0        =$60;
  145.      VK_NUMPAD1        =$61;
  146.      VK_NUMPAD2        =$62;
  147.      VK_NUMPAD3        =$63;
  148.      VK_NUMPAD4        =$64;
  149.      VK_NUMPAD5        =$65;
  150.      VK_NUMPAD6        =$66;
  151.      VK_NUMPAD7        =$67;
  152.      VK_NUMPAD8        =$68;
  153.      VK_NUMPAD9        =$69;
  154.      VK_MULTIPLY       =$6A;
  155.      VK_ADD            =$6B;
  156.      VK_SEPARATOR      =$6C;
  157.      VK_SUBTRACT       =$6D;
  158.      VK_DECIMAL        =$6E;
  159.      VK_DIVIDE         =$6F;
  160.      VK_F1             =$70;
  161.      VK_F2             =$71;
  162.      VK_F3             =$72;
  163.      VK_F4             =$73;
  164.      VK_F5             =$74;
  165.      VK_F6             =$75;
  166.      VK_F7             =$76;
  167.      VK_F8             =$77;
  168.      VK_F9             =$78;
  169.      VK_F10            =$79;
  170.      VK_F11            =$7A;
  171.      VK_F12            =$7B;
  172.      VK_F13            =$7C;
  173.      VK_F14            =$7D;
  174.      VK_F15            =$7E;
  175.      VK_F16            =$7F;
  176.      VK_F17            =$80;
  177.      VK_F18            =$81;
  178.      VK_F19            =$82;
  179.      VK_F20            =$83;
  180.      VK_F21            =$84;
  181.      VK_F22            =$85;
  182.      VK_F23            =$86;
  183.      VK_F24            =$87;
  184.      VK_NUMLOCK        =$90;
  185.      VK_SCROLL         =$91;
  186.      VK_LSHIFT         =$A0;
  187.      VK_RSHIFT         =$A1;
  188.      VK_LCONTROL       =$A2;
  189.      VK_RCONTROL       =$A3;
  190.      VK_LMENU          =$A4;
  191.      VK_RMENU          =$A5;
  192.      VK_ATTN           =$F6;
  193.      VK_CRSEL          =$F7;
  194.      VK_EXSEL          =$F8;
  195.      VK_EREOF          =$F9;
  196.      VK_PLAY           =$FA;
  197.      VK_ZOOM           =$FB;
  198.      VK_NONAME         =$FC;
  199.      VK_PA1            =$FD;
  200.      VK_OEM_CLEAR      =$FE;
  201.  
  202. CONST
  203.      WH_MIN              =-1;
  204.      WH_MSGFILTER        =-1;
  205.      WH_JOURNALRECORD    =0;
  206.      WH_JOURNALPLAYBACK  =1;
  207.      WH_KEYBOARD         =2;
  208.      WH_GETMESSAGE       =3;
  209.      WH_CALLWNDPROC      =4;
  210.      WH_CBT              =5;
  211.      WH_SYSMSGFILTER     =6;
  212.      WH_MOUSE            =7;
  213.      WH_HARDWARE         =8;
  214.      WH_DEBUG            =9;
  215.      WH_SHELL            =10;
  216.      WH_FOREGROUNDIDLE   =11;
  217.      WH_MAX              =11;
  218.  
  219. CONST
  220.      HC_ACTION           =0;
  221.      HC_GETNEXT          =1;
  222.      HC_SKIP             =2;
  223.      HC_NOREMOVE         =3;
  224.      HC_NOREM            =HC_NOREMOVE;
  225.      HC_SYSMODALON       =4;
  226.      HC_SYSMODALOFF      =5;
  227.  
  228. CONST
  229.      HCBT_MOVESIZE       =0;
  230.      HCBT_MINMAX         =1;
  231.      HCBT_QS             =2;
  232.      HCBT_CREATEWND      =3;
  233.      HCBT_DESTROYWND     =4;
  234.      HCBT_ACTIVATE       =5;
  235.      HCBT_CLICKSKIPPED   =6;
  236.      HCBT_KEYSKIPPED     =7;
  237.      HCBT_SYSCOMMAND     =8;
  238.      HCBT_SETFOCUS       =9;
  239.  
  240.  
  241. TYPE
  242.     PCREATESTRUCT=^CREATESTRUCT;
  243.     CREATESTRUCT=RECORD
  244.                        lpCreateParams:POINTER;
  245.                        hInstance:HINSTANCE;
  246.                        hMenu:HMENU;
  247.                        hwndParent:HWND;
  248.                        cy:LONGINT;
  249.                        cx:LONGINT;
  250.                        y:LONGINT;
  251.                        x:LONGINT;
  252.                        style:LONG;
  253.                        lpszName:PChar;
  254.                        lpszClass:PChar;
  255.                        dwExStyle:ULONG;
  256.     END;
  257.     LPCREATESTRUCT=PCREATESTRUCT;
  258.  
  259. TYPE
  260.     PCBT_CREATEWND=^CBT_CREATEWND;
  261.     CBT_CREATEWND=RECORD
  262.                         lpcs:PCREATESTRUCT;
  263.                         hwndInsertAfter:HWND;
  264.                   END;
  265.     LPCBT_CREATEWND=PCBT_CREATEWND;
  266.  
  267.     LPCBTACTIVATESTRUCT=^CBTACTIVATESTRUCT;
  268.     CBTACTIVATESTRUCT=RECORD
  269.                             fMouse:BOOL;
  270.                             hWndActive:HWND;
  271.                       END;
  272.  
  273. CONST
  274.      MSGF_DIALOGBOX      =0;
  275.      MSGF_MESSAGEBOX     =1;
  276.      MSGF_MENU           =2;
  277.      MSGF_MOVE           =3;
  278.      MSGF_SIZE           =4;
  279.      MSGF_SCROLLBAR      =5;
  280.      MSGF_NEXTWINDOW     =6;
  281.      MSGF_MAINLOOP       =8;
  282.      MSGF_MAX            =8;
  283.      MSGF_USER           =4096;
  284.  
  285. CONST
  286.      HSHELL_WINDOWCREATED        =1;
  287.      HSHELL_WINDOWDESTROYED      =2;
  288.      HSHELL_ACTIVATESHELLWINDOW  =3;
  289.  
  290. TYPE
  291.     PEVENTMSG=^EVENTMSG;
  292.     EVENTMSG=RECORD
  293.                    message:ULONG;
  294.                    paramL:ULONG;
  295.                    paramH:ULONG;
  296.                    time:ULONG;
  297.                    hwnd:HWND;
  298.              END;
  299.     PEVENTMSGMSG=PEVENTMSG;
  300.     NPEVENTMSGMSG=PEVENTMSG;
  301.     LPEVENTMSGMSG=PEVENTMSG;
  302.     NPEVENTMSG=PEVENTMSG;
  303.     LPEVENTMSG=PEVENTMSG;
  304.  
  305.     PCWPSTRUCT=^CWPSTRUCT;
  306.     CWPSTRUCT=RECORD
  307.                     lParam:LPARAM;
  308.                     wParam:WPARAM;
  309.                     message:ULONG;
  310.                     hwnd:HWND;
  311.               END;
  312.     NPCWPSTRUCT=PCWPSTRUCT;
  313.     LPCWPSTRUCT=PCWPSTRUCT;
  314.  
  315.     PDEBUGHOOKINFO=^DEBUGHOOKINFO;
  316.     DEBUGHOOKINFO=RECORD
  317.                         idThread:ULONG;
  318.                         idThreadInstaller:ULONG;
  319.                         lParam:LPARAM;
  320.                         wParam:WPARAM;
  321.                         code:LONGINT;
  322.                   END;
  323.     NPDEBUGHOOKINFO=PDEBUGHOOKINFO;
  324.     LPDEBUGHOOKINFO=PDEBUGHOOKINFO;
  325.  
  326.     PMOUSEHOOKSTRUCT=^MOUSEHOOKSTRUCT;
  327.     MOUSEHOOKSTRUCT=RECORD
  328.                           pt:POINT;
  329.                           hwnd:HWND;
  330.                           wHitTestCode:ULONG;
  331.                           dwExtraInfo:ULONG;
  332.                     END;
  333.     LPMOUSEHOOKSTRUCT=PMOUSEHOOKSTRUCT;
  334.  
  335. CONST
  336.      HKL_PREV            =0;
  337.      HKL_NEXT            =1;
  338.  
  339.      KLF_ACTIVATE        =$00000001;
  340.      KLF_SUBSTITUTE_OK   =$00000002;
  341.      KLF_UNLOADPREVIOUS  =$00000004;
  342.      KLF_REORDER         =$00000008;
  343.  
  344.      KL_NAMELENGTH       =9;
  345.  
  346. CONST
  347.      DESKTOP_READOBJECTS         =$0001;
  348.      DESKTOP_CREATEWINDOW        =$0002;
  349.      DESKTOP_CREATEMENU          =$0004;
  350.      DESKTOP_HOOKCONTROL         =$0008;
  351.      DESKTOP_JOURNALRECORD       =$0010;
  352.      DESKTOP_JOURNALPLAYBACK     =$0020;
  353.      DESKTOP_ENUMERATE           =$0040;
  354.      DESKTOP_WRITEOBJECTS        =$0080;
  355.  
  356. CONST
  357.      WINSTA_ENUMDESKTOPS         =$0001;
  358.      WINSTA_READATTRIBUTES       =$0002;
  359.      WINSTA_ACCESSCLIPBOARD      =$0004;
  360.      WINSTA_CREATEDESKTOP        =$0008;
  361.      WINSTA_WRITEATTRIBUTES      =$0010;
  362.      WINSTA_ACCESSGLOBALATOMS    =$0020;
  363.      WINSTA_EXITWINDOWS          =$0040;
  364.      WINSTA_ENUMERATE            =$0100;
  365.      WINSTA_READSCREEN           =$0200;
  366.  
  367. TYPE
  368.      PWNDCLASS=^WNDCLASS;
  369.      WNDCLASS=RECORD
  370.                     style:ULONG;
  371.                     lpfnWndProc:WNDPROC;
  372.                     cbClsExtra:LONGINT;
  373.                     cbWndExtra:LONGINT;
  374.                     hInstance:HINSTANCE;
  375.                     hIcon:HICON;
  376.                     hCursor:HCURSOR;
  377.                     hbrBackground:HBRUSH;
  378.                     lpszMenuName:PChar;
  379.                     lpszClassName:PChar;
  380.      END;
  381.      NPWNDCLASS=PWNDCLASS;
  382.      LPWNDCLASSA=PWNDCLASS;
  383.  
  384. TYPE
  385.     PMSG=^MSG;
  386.     MSG=RECORD
  387.               hwnd:HWND;
  388.               message:ULONG;
  389.               wParam:WPARAM;
  390.               lParam:LPARAM;
  391.               time:ULONG;
  392.               pt:POINT;
  393.     END;
  394.     NPMSG=PMSG;
  395.     LPMSG=PMSG;
  396.  
  397. CONST
  398.      GWL_WNDPROC        = -4;
  399.      GWL_HINSTANCE      = -6;
  400.      GWL_HWNDPARENT     = -8;
  401.      GWL_STYLE          = -16;
  402.      GWL_EXSTYLE        = -20;
  403.      GWL_USERDATA       = -21;
  404.      GWL_ID             = -12;
  405.  
  406.      GCL_MENUNAME       = -8;
  407.      GCL_HBRBACKGROUND  = -10;
  408.      GCL_HCURSOR        = -12;
  409.      GCL_HICON          = -14;
  410.      GCL_HMODULE        = -16;
  411.      GCL_CBWNDEXTRA     = -18;
  412.      GCL_CBCLSEXTRA     = -20;
  413.      GCL_WNDPROC        = -24;
  414.      GCL_STYLE          = -26;
  415.      GCW_ATOM           = -32;
  416.  
  417. CONST
  418.      //ICON_BIG           = ?;
  419.      ICON_SMALL         = 1;
  420.  
  421. CONST
  422.      WM_NULL                         =$0000;
  423.      WM_CREATE                       =$0001;
  424.      WM_DESTROY                      =$0002;
  425.      WM_MOVE                         =$0003;
  426.      WM_SIZE                         =$0005;
  427.      WM_ACTIVATE                     =$0006;
  428.      WM_SETFOCUS                     =$0007;
  429.      WM_KILLFOCUS                    =$0008;
  430.      WM_ENABLE                       =$000A;
  431.      WM_SETREDRAW                    =$000B;
  432.      WM_SETTEXT                      =$000C;
  433.      WM_GETTEXT                      =$000D;
  434.      WM_GETTEXTLENGTH                =$000E;
  435.      WM_PAINT                        =$000F;
  436.      WM_CLOSE                        =$0010;
  437.      WM_QUERYENDSESSION              =$0011;
  438.      WM_QUIT                         =$0012;
  439.      WM_QUERYOPEN                    =$0013;
  440.      WM_ERASEBKGND                   =$0014;
  441.      WM_SYSCOLORCHANGE               =$0015;
  442.      WM_ENDSESSION                   =$0016;
  443.      WM_SHOWWINDOW                   =$0018;
  444.      WM_WININICHANGE                 =$001A;
  445.      WM_DEVMODECHANGE                =$001B;
  446.      WM_ACTIVATEAPP                  =$001C;
  447.      WM_FONTCHANGE                   =$001D;
  448.      WM_TIMECHANGE                   =$001E;
  449.      WM_CANCELMODE                   =$001F;
  450.      WM_SETCURSOR                    =$0020;
  451.      WM_MOUSEACTIVATE                =$0021;
  452.      WM_CHILDACTIVATE                =$0022;
  453.      WM_QUEUESYNC                    =$0023;
  454.      WM_GETMINMAXINFO                =$0024;
  455.      WM_PAINTICON                    =$0026;
  456.      WM_ICONERASEBKGND               =$0027;
  457.      WM_NEXTDLGCTL                   =$0028;
  458.      WM_SPOOLERSTATUS                =$002A;
  459.      WM_DRAWITEM                     =$002B;
  460.      WM_MEASUREITEM                  =$002C;
  461.      WM_DELETEITEM                   =$002D;
  462.      WM_VKEYTOITEM                   =$002E;
  463.      WM_CHARTOITEM                   =$002F;
  464.      WM_SETFONT                      =$0030;
  465.      WM_GETFONT                      =$0031;
  466.      WM_SETHOTKEY                    =$0032;
  467.      WM_GETHOTKEY                    =$0033;
  468.      WM_QUERYDRAGICON                =$0037;
  469.      WM_COMPAREITEM                  =$0039;
  470.      WM_COMPACTING                   =$0041;
  471.      WM_COMMNOTIFY                   =$0044;
  472.      WM_WINDOWPOSCHANGING            =$0046;
  473.      WM_WINDOWPOSCHANGED             =$0047;
  474.      WM_POWER                        =$0048;
  475.      WM_COPYDATA                     =$004A;
  476.      WM_CANCELJOURNAL                =$004B;
  477.      WM_GETICON                      =$007F;
  478.      WM_SETICON                      =$0080;
  479.      WM_NCCREATE                     =$0081;
  480.      WM_NCDESTROY                    =$0082;
  481.      WM_NCCALCSIZE                   =$0083;
  482.      WM_NCHITTEST                    =$0084;
  483.      WM_NCPAINT                      =$0085;
  484.      WM_NCACTIVATE                   =$0086;
  485.      WM_GETDLGCODE                   =$0087;
  486.      WM_NCMOUSEMOVE                  =$00A0;
  487.      WM_NCLBUTTONDOWN                =$00A1;
  488.      WM_NCLBUTTONUP                  =$00A2;
  489.      WM_NCLBUTTONDBLCLK              =$00A3;
  490.      WM_NCRBUTTONDOWN                =$00A4;
  491.      WM_NCRBUTTONUP                  =$00A5;
  492.      WM_NCRBUTTONDBLCLK              =$00A6;
  493.      WM_NCMBUTTONDOWN                =$00A7;
  494.      WM_NCMBUTTONUP                  =$00A8;
  495.      WM_NCMBUTTONDBLCLK              =$00A9;
  496.      WM_KEYFIRST                     =$0100;
  497.      WM_KEYDOWN                      =$0100;
  498.      WM_KEYUP                        =$0101;
  499.      WM_CHAR                         =$0102;
  500.      WM_DEADCHAR                     =$0103;
  501.      WM_SYSKEYDOWN                   =$0104;
  502.      WM_SYSKEYUP                     =$0105;
  503.      WM_SYSCHAR                      =$0106;
  504.      WM_SYSDEADCHAR                  =$0107;
  505.      WM_KEYLAST                      =$0108;
  506.      WM_INITDIALOG                   =$0110;
  507.      WM_COMMAND                      =$0111;
  508.      WM_SYSCOMMAND                   =$0112;
  509.      WM_TIMER                        =$0113;
  510.      WM_HSCROLL                      =$0114;
  511.      WM_VSCROLL                      =$0115;
  512.      WM_INITMENU                     =$0116;
  513.      WM_INITMENUPOPUP                =$0117;
  514.      WM_MENUSELECT                   =$011F;
  515.      WM_MENUCHAR                     =$0120;
  516.      WM_ENTERIDLE                    =$0121;
  517.      WM_CTLCOLORMSGBOX               =$0132;
  518.      WM_CTLCOLOREDIT                 =$0133;
  519.      WM_CTLCOLORLISTBOX              =$0134;
  520.      WM_CTLCOLORBTN                  =$0135;
  521.      WM_CTLCOLORDLG                  =$0136;
  522.      WM_CTLCOLORSCROLLBAR            =$0137;
  523.      WM_CTLCOLORSTATIC               =$0138;
  524.      WM_MOUSEFIRST                   =$0200;
  525.      WM_MOUSEMOVE                    =$0200;
  526.      WM_LBUTTONDOWN                  =$0201;
  527.      WM_LBUTTONUP                    =$0202;
  528.      WM_LBUTTONDBLCLK                =$0203;
  529.      WM_RBUTTONDOWN                  =$0204;
  530.      WM_RBUTTONUP                    =$0205;
  531.      WM_RBUTTONDBLCLK                =$0206;
  532.      WM_MBUTTONDOWN                  =$0207;
  533.      WM_MBUTTONUP                    =$0208;
  534.      WM_MBUTTONDBLCLK                =$0209;
  535.      WM_MOUSELAST                    =$0209;
  536.      WM_PARENTNOTIFY                 =$0210;
  537.      WM_ENTERMENULOOP                =$0211;
  538.      WM_EXITMENULOOP                 =$0212;
  539.      WM_MDICREATE                    =$0220;
  540.      WM_MDIDESTROY                   =$0221;
  541.      WM_MDIACTIVATE                  =$0222;
  542.      WM_MDIRESTORE                   =$0223;
  543.      WM_MDINEXT                      =$0224;
  544.      WM_MDIMAXIMIZE                  =$0225;
  545.      WM_MDITILE                      =$0226;
  546.      WM_MDICASCADE                   =$0227;
  547.      WM_MDIICONARRANGE               =$0228;
  548.      WM_MDIGETACTIVE                 =$0229;
  549.      WM_MDISETMENU                   =$0230;
  550.      WM_DROPFILES                    =$0233;
  551.      WM_MDIREFRESHMENU               =$0234;
  552.      WM_CUT                          =$0300;
  553.      WM_COPY                         =$0301;
  554.      WM_PASTE                        =$0302;
  555.      WM_CLEAR                        =$0303;
  556.      WM_UNDO                         =$0304;
  557.      WM_RENDERFORMAT                 =$0305;
  558.      WM_RENDERALLFORMATS             =$0306;
  559.      WM_DESTROYCLIPBOARD             =$0307;
  560.      WM_DRAWCLIPBOARD                =$0308;
  561.      WM_PAINTCLIPBOARD               =$0309;
  562.      WM_VSCROLLCLIPBOARD             =$030A;
  563.      WM_SIZECLIPBOARD                =$030B;
  564.      WM_ASKCBFORMATNAME              =$030C;
  565.      WM_CHANGECBCHAIN                =$030D;
  566.      WM_HSCROLLCLIPBOARD             =$030E;
  567.      WM_QUERYNEWPALETTE              =$030F;
  568.      WM_PALETTEISCHANGING            =$0310;
  569.      WM_PALETTECHANGED               =$0311;
  570.      WM_HOTKEY                       =$0312;
  571.      WM_PENWINFIRST                  =$0380;
  572.      WM_PENWINLAST                   =$038F;
  573.      WM_USER                         =$0400;
  574.  
  575.      WM_MOUSEDRAG1                   =$0401;  {own defined}
  576.      WM_MOUSEDRAG2                   =$0402;  {own defined}
  577.      WM_SEM1                         =$0403;  {own defined}
  578.  
  579.      WM_SPEED_USER                   =$0404;  {use this entry when working with OPML !}
  580.  
  581.  
  582. TYPE
  583.     PCOPYDATASTRUCT=^COPYDATASTRUCT;
  584.     COPYDATASTRUCT=RECORD
  585.                          dwData:ULONG;
  586.                          cbData:ULONG;
  587.                          lpData:POINTER;
  588.     END;
  589.  
  590. CONST
  591.      PWR_OK              =1;
  592.      PWR_FAIL            =-1;
  593.      PWR_SUSPENDREQUEST  =1;
  594.      PWR_SUSPENDRESUME   =2;
  595.      PWR_CRITICALRESUME  =3;
  596.  
  597. TYPE
  598.     PMINMAXINFO=^MINMAXINFO;
  599.     MINMAXINFO=RECORD
  600.                      ptReserved:POINT;
  601.                      ptMaxSize:POINT;
  602.                      ptMaxPosition:POINT;
  603.                      ptMinTrackSize:POINT;
  604.                      ptMaxTrackSize:POINT;
  605.     END;
  606.     LPMINMAXINFO=PMINMAXINFO;
  607.  
  608.  
  609. CONST
  610.      WA_INACTIVE     =0;
  611.      WA_ACTIVE       =1;
  612.      WA_CLICKACTIVE  =2;
  613.  
  614.      ST_BEGINSWP         =0;
  615.      ST_ENDSWP           =1;
  616.  
  617. CONST
  618.      HTERROR             =-2;
  619.      HTTRANSPARENT       =-1;
  620.      HTNOWHERE           =0;
  621.      HTCLIENT            =1;
  622.      HTCAPTION           =2;
  623.      HTSYSMENU           =3;
  624.      HTGROWBOX           =4;
  625.      HTSIZE              =HTGROWBOX;
  626.      HTMENU              =5;
  627.      HTHSCROLL           =6;
  628.      HTVSCROLL           =7;
  629.      HTMINBUTTON         =8;
  630.      HTMAXBUTTON         =9;
  631.      HTLEFT              =10;
  632.      HTRIGHT             =11;
  633.      HTTOP               =12;
  634.      HTTOPLEFT           =13;
  635.      HTTOPRIGHT          =14;
  636.      HTBOTTOM            =15;
  637.      HTBOTTOMLEFT        =16;
  638.      HTBOTTOMRIGHT       =17;
  639.      HTBORDER            =18;
  640.      HTREDUCE            =HTMINBUTTON;
  641.      HTZOOM              =HTMAXBUTTON;
  642.      HTSIZEFIRST         =HTLEFT;
  643.      HTSIZELAST          =HTBOTTOMRIGHT;
  644.  
  645.      SMTO_NORMAL         =$0000;
  646.      SMTO_BLOCK          =$0001;
  647.      SMTO_ABORTIFHUNG    =$0002;
  648.  
  649.      MA_ACTIVATE         =1;
  650.      MA_ACTIVATEANDEAT   =2;
  651.      MA_NOACTIVATE       =3;
  652.      MA_NOACTIVATEANDEAT =4;
  653.  
  654. CONST
  655.      SIZE_RESTORED       =0;
  656.      SIZE_MINIMIZED      =1;
  657.      SIZE_MAXIMIZED      =2;
  658.      SIZE_MAXSHOW        =3;
  659.      SIZE_MAXHIDE        =4;
  660.  
  661.      SIZENORMAL          =SIZE_RESTORED;
  662.      SIZEICONIC          =SIZE_MINIMIZED;
  663.      SIZEFULLSCREEN      =SIZE_MAXIMIZED;
  664.      SIZEZOOMSHOW        =SIZE_MAXSHOW;
  665.      SIZEZOOMHIDE        =SIZE_MAXHIDE;
  666.  
  667. TYPE
  668.     PWINDOWPOS=^WINDOWPOS;
  669.     WINDOWPOS=RECORD
  670.                     hwnd:HWND;
  671.                     hwndInsertAfter:HWND;
  672.                     x:LONGINT;
  673.                     y:LONGINT;
  674.                     cx:LONGINT;
  675.                     cy:LONGINT;
  676.                     flags:ULONG;
  677.      END;
  678.      LPWINDOWPOS=PWINDOWPOS;
  679.  
  680.      PNCCALCSIZE_PARAMS=^NCCALCSIZE_PARAMS;
  681.      NCCALCSIZE_PARAMS=RECORD
  682.                              rgrc:ARRAY[0..2] OF RECT;
  683.                              lppos:PWINDOWPOS;
  684.      END;
  685.      LPNCCALCSIZE_PARAMS=PNCCALCSIZE_PARAMS;
  686.  
  687. CONST
  688.      WVR_ALIGNTOP        =$0010;
  689.      WVR_ALIGNLEFT       =$0020;
  690.      WVR_ALIGNBOTTOM     =$0040;
  691.      WVR_ALIGNRIGHT      =$0080;
  692.      WVR_HREDRAW         =$0100;
  693.      WVR_VREDRAW         =$0200;
  694.      WVR_REDRAW          =WVR_HREDRAW OR WVR_VREDRAW;
  695.      WVR_VALIDRECTS      =$0400;
  696.  
  697. CONST
  698.      MK_LBUTTON          =$0001;
  699.      MK_RBUTTON          =$0002;
  700.      MK_SHIFT            =$0004;
  701.      MK_CONTROL          =$0008;
  702.      MK_MBUTTON          =$0010;
  703.  
  704. CONST
  705.      WS_OVERLAPPED       =$00000000;
  706.      WS_POPUP            =$80000000;
  707.      WS_CHILD            =$40000000;
  708.      WS_MINIMIZE         =$20000000;
  709.      WS_VISIBLE          =$10000000;
  710.      WS_DISABLED         =$08000000;
  711.      WS_CLIPSIBLINGS     =$04000000;
  712.      WS_CLIPCHILDREN     =$02000000;
  713.      WS_MAXIMIZE         =$01000000;
  714.      WS_CAPTION          =$00C00000;
  715.      WS_BORDER           =$00800000;
  716.      WS_DLGFRAME         =$00400000;
  717.      WS_VSCROLL          =$00200000;
  718.      WS_HSCROLL          =$00100000;
  719.      WS_SYSMENU          =$00080000;
  720.      WS_THICKFRAME       =$00040000;
  721.      WS_GROUP            =$00020000;
  722.      WS_TABSTOP          =$00010000;
  723.      WS_MINIMIZEBOX      =$00020000;
  724.      WS_MAXIMIZEBOX      =$00010000;
  725.      WS_TILED            =WS_OVERLAPPED;
  726.      WS_ICONIC           =WS_MINIMIZE;
  727.      WS_SIZEBOX          =WS_THICKFRAME;
  728.      WS_OVERLAPPEDWINDOW =WS_OVERLAPPED OR WS_CAPTION OR WS_SYSMENU OR
  729.                           WS_THICKFRAME OR WS_MINIMIZEBOX OR WS_MAXIMIZEBOX;
  730.      WS_TILEDWINDOW      =WS_OVERLAPPEDWINDOW;
  731.      WS_POPUPWINDOW      =WS_POPUP OR WS_BORDER OR WS_SYSMENU;
  732.      WS_CHILDWINDOW      =WS_CHILD;
  733.      WS_EX_DLGMODALFRAME =$00000001;
  734.      WS_EX_NOPARENTNOTIFY=$00000004;
  735.      WS_EX_TOPMOST       =$00000008;
  736.      WS_EX_ACCEPTFILES   =$00000010;
  737.      WS_EX_TRANSPARENT   =$00000020;
  738.      WS_EX_MDICHILD      =$00000040;
  739.      WS_EX_TOOLWINDOW    =$00000080;
  740.      WS_EX_WINDOWEDGE    =$00000100;
  741.      WS_EX_CLIENTEDGE    =$00000200;
  742.      WS_EX_CONTEXTHELP   =$00000400;
  743.      WS_EX_RIGHT         =$00001000;
  744.      WS_EX_LEFT          =0;
  745.      WS_EX_RTLREADING    =$00002000;
  746.      WS_EX_LTRREADING    =0;
  747.      WS_EX_LEFTSCROLLBAR =$00004000;
  748.      WS_EX_RIGHTSCROLLBAR=0;
  749.      WS_EX_CONTROLPARENT =$00010000;
  750.      WS_EX_STATICEDGE    =$00020000;
  751.      WS_EX_APPWINDOW     =$00040000;
  752.      WS_EX_OVERLAPPEDWINDOW =WS_EX_WINDOWEDGE OR WS_EX_CLIENTEDGE;
  753.      WS_EX_PALETTEWINDOW =WS_EX_WINDOWEDGE OR WS_EX_TOOLWINDOW OR WS_EX_TOPMOST;
  754.      {}
  755.  
  756. CONST
  757.      CS_VREDRAW          =$0001;
  758.      CS_HREDRAW          =$0002;
  759.      CS_KEYCVTWINDOW     =$0004;
  760.      CS_DBLCLKS          =$0008;
  761.      CS_OWNDC            =$0020;
  762.      CS_CLASSDC          =$0040;
  763.      CS_PARENTDC         =$0080;
  764.      CS_NOKEYCVT         =$0100;
  765.      CS_NOCLOSE          =$0200;
  766.      CS_SAVEBITS         =$0800;
  767.      CS_BYTEALIGNCLIENT  =$1000;
  768.      CS_BYTEALIGNWINDOW  =$2000;
  769.      CS_GLOBALCLASS      =$4000;
  770.  
  771. CONST
  772.      CF_TEXT             =1;
  773.      CF_BITMAP           =2;
  774.      CF_METAFILEPICT     =3;
  775.      CF_SYLK             =4;
  776.      CF_DIF              =5;
  777.      CF_TIFF             =6;
  778.      CF_OEMTEXT          =7;
  779.      CF_DIB              =8;
  780.      CF_PALETTE          =9;
  781.      CF_PENDATA          =10;
  782.      CF_RIFF             =11;
  783.      CF_WAVE             =12;
  784.      CF_UNICODETEXT      =13;
  785.      CF_ENHMETAFILE      =14;
  786.      CF_OWNERDISPLAY     =$0080;
  787.      CF_DSPTEXT          =$0081;
  788.      CF_DSPBITMAP        =$0082;
  789.      CF_DSPMETAFILEPICT  =$0083;
  790.      CF_DSPENHMETAFILE   =$008E;
  791.      CF_PRIVATEFIRST     =$0200;
  792.      CF_PRIVATELAST      =$02FF;
  793.      CF_GDIOBJFIRST      =$0300;
  794.      CF_GDIOBJLAST       =$03FF;
  795.  
  796. CONST
  797.      FVIRTKEY  =1;
  798.      FNOINVERT =$02;
  799.      FSHIFT    =$04;
  800.      FCONTROL  =$08;
  801.      FALT      =$10;
  802.  
  803. TYPE
  804.     PACCEL=^ACCEL;
  805.     ACCEL=RECORD
  806.                 fVirt:BYTE;               /* Also called the flags field */
  807.                 key:WORD;
  808.                 cmd:WORD;
  809.     END;
  810.     LPACCEL=PACCEL;
  811.  
  812.     PPAINTSTRUCT=^PAINTSTRUCT;
  813.     PAINTSTRUCT=RECORD
  814.                       hdc:HDC;
  815.                       fErase:BOOL;
  816.                       rcPaint:RECT;
  817.                       fRestore:BOOL;
  818.                       fIncUpdate:BOOL;
  819.                       rgbReserved:ARRAY[0..31] OF BYTE;
  820.      END;
  821.      NPPAINTSTRUCT=PPAINTSTRUCT;
  822.      LPPAINTSTRUCT=PPAINTSTRUCT;
  823.  
  824.      PWINDOWPLACEMENT=^WINDOWPLACEMENT;
  825.      WINDOWPLACEMENT=RECORD
  826.                            length:ULONG;
  827.                            flags:ULONG;
  828.                            showCmd:ULONG;
  829.                            ptMinPosition:POINT;
  830.                            ptMaxPosition:POINT;
  831.                            rcNormalPosition:RECT;
  832.       END;
  833.       LPWINDOWPLACEMENT=PWINDOWPLACEMENT;
  834.  
  835. CONST
  836.      WPF_SETMINPOSITION      =$0001;
  837.      WPF_RESTORETOMAXIMIZED  =$0002;
  838.  
  839.      ODT_MENU        =1;
  840.      ODT_LISTBOX     =2;
  841.      ODT_COMBOBOX    =3;
  842.      ODT_BUTTON      =4;
  843.  
  844.      ODA_DRAWENTIRE  =$0001;
  845.      ODA_SELECT      =$0002;
  846.      ODA_FOCUS       =$0004;
  847.  
  848.      ODS_SELECTED    =$0001;
  849.      ODS_GRAYED      =$0002;
  850.      ODS_DISABLED    =$0004;
  851.      ODS_CHECKED     =$0008;
  852.      ODS_FOCUS       =$0010;
  853.  
  854. TYPE
  855.     PMEASUREITEMSTRUCT=^MEASUREITEMSTRUCT;
  856.     MEASUREITEMSTRUCT=RECORD
  857.                             CtlType:ULONG;
  858.                             CtlID:ULONG;
  859.                             itemID:ULONG;
  860.                             itemWidth:ULONG;
  861.                             itemHeight:ULONG;
  862.                             itemData:ULONG;
  863.     END;
  864.     LPMEASUREITEMSTRUCT=PMEASUREITEMSTRUCT;
  865.  
  866.     PDRAWITEMSTRUCT=^DRAWITEMSTRUCT;
  867.     DRAWITEMSTRUCT=RECORD
  868.                          CtlType:ULONG;
  869.                          CtlID:ULONG;
  870.                          itemID:ULONG;
  871.                          itemAction:ULONG;
  872.                          itemState:ULONG;
  873.                          hwndItem:HWND;
  874.                          hDC:HDC;
  875.                          rcItem:RECT;
  876.                          itemData:ULONG;
  877.     END;
  878.     LPDRAWITEMSTRUCT=PDRAWITEMSTRUCT;
  879.  
  880.     PDELETEITEMSTRUCT=^DELETEITEMSTRUCT;
  881.     DELETEITEMSTRUCT=RECORD
  882.                            CtlType:ULONG;
  883.                            CtlID:ULONG;
  884.                            itemID:ULONG;
  885.                            hwndItem:HWND;
  886.                            itemData:ULONG;
  887.     END;
  888.     LPDELETEITEMSTRUCT=PDELETEITEMSTRUCT;
  889.  
  890.     PCOMPAREITEMSTRUCT=^COMPAREITEMSTRUCT;
  891.     COMPAREITEMSTRUCT=RECORD
  892.                             CtlType:ULONG;
  893.                             CtlID:ULONG;
  894.                             hwndItem:HWND;
  895.                             itemID1:ULONG;
  896.                             itemData1:ULONG;
  897.                             itemID2:ULONG;
  898.                             itemData2:ULONG;
  899.                             dwLocaleId:ULONG;
  900.     END;
  901.     LPCOMPAREITEMSTRUCT=PCOMPAREITEMSTRUCT;
  902.  
  903. CONST
  904.      PM_NOREMOVE         =$0000;
  905.      PM_REMOVE           =$0001;
  906.      PM_NOYIELD          =$0002;
  907.  
  908. CONST
  909.      MOD_ALT         =$0001;
  910.      MOD_CONTROL     =$0002;
  911.      MOD_SHIFT       =$0004;
  912.  
  913.      IDHOT_SNAPWINDOW        =-1;    {SHIFT+PRINTSCRN}
  914.      IDHOT_SNAPDESKTOP       =-2;    {PRINTSCRN}
  915.  
  916.      EWX_LOGOFF   =0;
  917.      EWX_SHUTDOWN =1;
  918.      EWX_REBOOT   =2;
  919.      EWX_FORCE    =4;
  920.      EWX_POWEROFF =8;
  921.  
  922. CONST
  923.      HWND_BROADCAST  =$ffff;
  924.  
  925.      CW_USEDEFAULT   =$80000000;
  926.  
  927.      HWND_DESKTOP    =0;
  928.      HWND_TOP        =0;
  929.      HWND_BOTTOM     =1;
  930.      HWND_TOPMOST    =-1;
  931.      HWND_NOTOPMOST  =-2;
  932.  
  933. CONST
  934.      SWP_NOSIZE          =$0001;
  935.      SWP_NOMOVE          =$0002;
  936.      SWP_NOZORDER        =$0004;
  937.      SWP_NOREDRAW        =$0008;
  938.      SWP_NOACTIVATE      =$0010;
  939.      SWP_FRAMECHANGED    =$0020;
  940.      SWP_SHOWWINDOW      =$0040;
  941.      SWP_HIDEWINDOW      =$0080;
  942.      SWP_NOCOPYBITS      =$0100;
  943.      SWP_NOOWNERZORDER   =$0200;
  944.      SWP_DRAWFRAME       =SWP_FRAMECHANGED;
  945.      SWP_NOREPOSITION    =SWP_NOOWNERZORDER;
  946.  
  947. TYPE
  948.     PDLGTEMPLATE=^DLGTEMPLATE;
  949.     DLGTEMPLATE=RECORD
  950.                       style:ULONG;
  951.                       dwExtendedStyle:ULONG;
  952.                       cdit:WORD;
  953.                       x:SHORT;
  954.                       y:SHORT;
  955.                       cx:SHORT;
  956.                       cy:SHORT;
  957.     END;
  958.     LPDLGTEMPLATE=PDLGTEMPLATE;
  959.  
  960.     PDLGITEMTEMPLATE=^DLGITEMTEMPLATE;
  961.     DLGITEMTEMPLATE=RECORD
  962.                           style:ULONG;
  963.                           dwExtendedStyle:ULONG;
  964.                           x:SHORT;
  965.                           y:SHORT;
  966.                           cx:SHORT;
  967.                           cy:SHORT;
  968.                           id:WORD;
  969.     END;
  970.     LPDLGITEMTEMPLATE=PDLGITEMTEMPLATE;
  971.  
  972. CONST
  973.      DLGWINDOWEXTRA =30;
  974.  
  975. CONST
  976.      KEYEVENTF_EXTENDEDKEY =$0001;
  977.      KEYEVENTF_KEYUP       =$0002;
  978.  
  979. CONST
  980.      MOUSEEVENTF_MOVE        =$0001;
  981.      MOUSEEVENTF_LEFTDOWN    =$0002;
  982.      MOUSEEVENTF_LEFTUP      =$0004;
  983.      MOUSEEVENTF_RIGHTDOWN   =$0008;
  984.      MOUSEEVENTF_RIGHTUP     =$0010;
  985.      MOUSEEVENTF_MIDDLEDOWN  =$0020;
  986.      MOUSEEVENTF_MIDDLEUP    =$0040;
  987.      MOUSEEVENTF_ABSOLUTE    =$8000;
  988.  
  989. CONST
  990.      QS_KEY           =$01;
  991.      QS_MOUSEMOVE     =$02;
  992.      QS_MOUSEBUTTON   =$04;
  993.      QS_POSTMESSAGE   =$08;
  994.      QS_TIMER         =$10;
  995.      QS_PAINT         =$20;
  996.      QS_SENDMESSAGE   =$40;
  997.      QS_HOTKEY        =$80;
  998.      QS_MOUSE         =QS_MOUSEMOVE OR QS_MOUSEBUTTON;
  999.      QS_INPUT         =QS_MOUSE OR QS_KEY;
  1000.      QS_ALLEVENTS     =QS_INPUT OR QS_POSTMESSAGE OR QS_TIMER OR QS_PAINT OR QS_HOTKEY;
  1001.      QS_ALLINPUT      =QS_SENDMESSAGE OR QS_PAINT OR QS_TIMER OR QS_POSTMESSAGE OR
  1002.                        QS_MOUSEBUTTON OR QS_MOUSEMOVE OR QS_HOTKEY OR QS_KEY;
  1003.  
  1004. CONST
  1005.      SM_CXSCREEN             =0;
  1006.      SM_CYSCREEN             =1;
  1007.      SM_CXVSCROLL            =2;
  1008.      SM_CYHSCROLL            =3;
  1009.      SM_CYCAPTION            =4;
  1010.      SM_CXBORDER             =5;
  1011.      SM_CYBORDER             =6;
  1012.      SM_CXDLGFRAME           =7;
  1013.      SM_CYDLGFRAME           =8;
  1014.      SM_CYVTHUMB             =9;
  1015.      SM_CXHTHUMB             =10;
  1016.      SM_CXICON               =11;
  1017.      SM_CYICON               =12;
  1018.      SM_CXCURSOR             =13;
  1019.      SM_CYCURSOR             =14;
  1020.      SM_CYMENU               =15;
  1021.      SM_CXFULLSCREEN         =16;
  1022.      SM_CYFULLSCREEN         =17;
  1023.      SM_CYKANJIWINDOW        =18;
  1024.      SM_MOUSEPRESENT         =19;
  1025.      SM_CYVSCROLL            =20;
  1026.      SM_CXHSCROLL            =21;
  1027.      SM_DEBUG                =22;
  1028.      SM_SWAPBUTTON           =23;
  1029.      SM_RESERVED1            =24;
  1030.      SM_RESERVED2            =25;
  1031.      SM_RESERVED3            =26;
  1032.      SM_RESERVED4            =27;
  1033.      SM_CXMIN                =28;
  1034.      SM_CYMIN                =29;
  1035.      SM_CXSIZE               =30;
  1036.      SM_CYSIZE               =31;
  1037.      SM_CXFRAME              =32;
  1038.      SM_CYFRAME              =33;
  1039.      SM_CXMINTRACK           =34;
  1040.      SM_CYMINTRACK           =35;
  1041.      SM_CXDOUBLECLK          =36;
  1042.      SM_CYDOUBLECLK          =37;
  1043.      SM_CXICONSPACING        =38;
  1044.      SM_CYICONSPACING        =39;
  1045.      SM_MENUDROPALIGNMENT    =40;
  1046.      SM_PENWINDOWS           =41;
  1047.      SM_DBCSENABLED          =42;
  1048.      SM_CMOUSEBUTTONS        =43;
  1049.      SM_SHOWSOUNDS           =70;
  1050.      SM_CMETRICS             =71;
  1051.  
  1052. CONST
  1053.      TPM_LEFTBUTTON  =$0000;
  1054.      TPM_RIGHTBUTTON =$0002;
  1055.      TPM_LEFTALIGN   =$0000;
  1056.      TPM_CENTERALIGN =$0004;
  1057.      TPM_RIGHTALIGN  =$0008;
  1058.  
  1059. CONST
  1060.      DT_TOP              =$00000000;
  1061.      DT_LEFT             =$00000000;
  1062.      DT_CENTER           =$00000001;
  1063.      DT_RIGHT            =$00000002;
  1064.      DT_VCENTER          =$00000004;
  1065.      DT_BOTTOM           =$00000008;
  1066.      DT_WORDBREAK        =$00000010;
  1067.      DT_SINGLELINE       =$00000020;
  1068.      DT_EXPANDTABS       =$00000040;
  1069.      DT_TABSTOP          =$00000080;
  1070.      DT_NOCLIP           =$00000100;
  1071.      DT_EXTERNALLEADING  =$00000200;
  1072.      DT_CALCRECT         =$00000400;
  1073.      DT_NOPREFIX         =$00000800;
  1074.      DT_INTERNAL         =$00001000;
  1075.  
  1076. CONST
  1077.      DCX_WINDOW           =$00000001;
  1078.      DCX_CACHE            =$00000002;
  1079.      DCX_NORESETATTRS     =$00000004;
  1080.      DCX_CLIPCHILDREN     =$00000008;
  1081.      DCX_CLIPSIBLINGS     =$00000010;
  1082.      DCX_PARENTCLIP       =$00000020;
  1083.      DCX_EXCLUDERGN       =$00000040;
  1084.      DCX_INTERSECTRGN     =$00000080;
  1085.      DCX_EXCLUDEUPDATE    =$00000100;
  1086.      DCX_INTERSECTUPDATE  =$00000200;
  1087.      DCX_LOCKWINDOWUPDATE =$00000400;
  1088.      DCX_NORECOMPUTE      =$00100000;
  1089.      DCX_VALIDATE         =$00200000;
  1090.  
  1091. CONST
  1092.      RDW_INVALIDATE          =$0001;
  1093.      RDW_INTERNALPAINT       =$0002;
  1094.      RDW_ERASE               =$0004;
  1095.      RDW_VALIDATE            =$0008;
  1096.      RDW_NOINTERNALPAINT     =$0010;
  1097.      RDW_NOERASE             =$0020;
  1098.      RDW_NOCHILDREN          =$0040;
  1099.      RDW_ALLCHILDREN         =$0080;
  1100.      RDW_UPDATENOW           =$0100;
  1101.      RDW_ERASENOW            =$0200;
  1102.      RDW_FRAME               =$0400;
  1103.      RDW_NOFRAME             =$0800;
  1104.  
  1105.      SW_SCROLLCHILDREN       =$0001;
  1106.      SW_INVALIDATE           =$0002;
  1107.      SW_ERASE                =$0004;
  1108.  
  1109. CONST
  1110.      ESB_ENABLE_BOTH     =$0000;
  1111.      ESB_DISABLE_BOTH    =$0003;
  1112.      ESB_DISABLE_LEFT    =$0001;
  1113.      ESB_DISABLE_RIGHT   =$0002;
  1114.      ESB_DISABLE_UP      =$0001;
  1115.      ESB_DISABLE_DOWN    =$0002;
  1116.      ESB_DISABLE_LTUP    =ESB_DISABLE_LEFT;
  1117.      ESB_DISABLE_RTDN    =ESB_DISABLE_RIGHT;
  1118.  
  1119. CONST
  1120.      MB_OK                       =$00000000;
  1121.      MB_OKCANCEL                 =$00000001;
  1122.      MB_ABORTRETRYIGNORE         =$00000002;
  1123.      MB_YESNOCANCEL              =$00000003;
  1124.      MB_YESNO                    =$00000004;
  1125.      MB_RETRYCANCEL              =$00000005;
  1126.      MB_ICONHAND                 =$00000010;
  1127.      MB_ICONQUESTION             =$00000020;
  1128.      MB_ICONEXCLAMATION          =$00000030;
  1129.      MB_ICONASTERISK             =$00000040;
  1130.      MB_ICONINFORMATION          =MB_ICONASTERISK;
  1131.      MB_ICONSTOP                 =MB_ICONHAND;
  1132.      MB_DEFBUTTON1               =$00000000;
  1133.      MB_DEFBUTTON2               =$00000100;
  1134.      MB_DEFBUTTON3               =$00000200;
  1135.      MB_APPLMODAL                =$00000000;
  1136.      MB_SYSTEMMODAL              =$00001000;
  1137.      MB_TASKMODAL                =$00002000;
  1138.      MB_NOFOCUS                  =$00008000;
  1139.      MB_SETFOREGROUND            =$00010000;
  1140.      MB_DEFAULT_DESKTOP_ONLY     =$00020000;
  1141.      MB_SERVICE_NOTIFICATION     =$00040000;
  1142.      MB_TYPEMASK                 =$0000000F;
  1143.      MB_ICONMASK                 =$000000F0;
  1144.      MB_DEFMASK                  =$00000F00;
  1145.      MB_MODEMASK                 =$00003000;
  1146.      MB_MISCMASK                 =$0000C000;
  1147.  
  1148. CONST
  1149.      CTLCOLOR_MSGBOX             =0;
  1150.      CTLCOLOR_EDIT               =1;
  1151.      CTLCOLOR_LISTBOX            =2;
  1152.      CTLCOLOR_BTN                =3;
  1153.      CTLCOLOR_DLG                =4;
  1154.      CTLCOLOR_SCROLLBAR          =5;
  1155.      CTLCOLOR_STATIC             =6;
  1156.      CTLCOLOR_MAX                =7;
  1157.  
  1158.      COLOR_SCROLLBAR             =0;
  1159.      COLOR_BACKGROUND            =1;
  1160.      COLOR_ACTIVECAPTION         =2;
  1161.      COLOR_INACTIVECAPTION       =3;
  1162.      COLOR_MENU                  =4;
  1163.      COLOR_WINDOW                =5;
  1164.      COLOR_WINDOWFRAME           =6;
  1165.      COLOR_MENUTEXT              =7;
  1166.      COLOR_WINDOWTEXT            =8;
  1167.      COLOR_CAPTIONTEXT           =9;
  1168.      COLOR_ACTIVEBORDER          =10;
  1169.      COLOR_INACTIVEBORDER        =11;
  1170.      COLOR_APPWORKSPACE          =12;
  1171.      COLOR_HIGHLIGHT             =13;
  1172.      COLOR_HIGHLIGHTTEXT         =14;
  1173.      COLOR_BTNFACE               =15;
  1174.      COLOR_BTNSHADOW             =16;
  1175.      COLOR_GRAYTEXT              =17;
  1176.      COLOR_BTNTEXT               =18;
  1177.      COLOR_INACTIVECAPTIONTEXT   =19;
  1178.      COLOR_BTNHIGHLIGHT          =20;
  1179.      COLOR_3DDKSHADOW            =21;
  1180.      COLOR_3DLIGHT               =22;
  1181.      COLOR_INFOTEXT              =23;
  1182.      COLOR_INFOBK                =24;
  1183.      COLOR_ENDCOLORS             =COLOR_INFOBK;
  1184.      COLOR_DESKTOP               =COLOR_BACKGROUND;
  1185.      COLOR_3DFACE                =COLOR_BTNFACE;
  1186.      COLOR_3DSHADOW              =COLOR_BTNSHADOW;
  1187.      COLOR_3DHIGHLIGHT           =COLOR_BTNHIGHLIGHT;
  1188.      COLOR_3DHILIGHT             =COLOR_BTNHIGHLIGHT;
  1189.      COLOR_BTNHILIGHT            =COLOR_BTNHIGHLIGHT;
  1190.  
  1191. CONST
  1192.      GW_HWNDFIRST        =0;
  1193.      GW_HWNDLAST         =1;
  1194.      GW_HWNDNEXT         =2;
  1195.      GW_HWNDPREV         =3;
  1196.      GW_OWNER            =4;
  1197.      GW_CHILD            =5;
  1198.      GW_MAX              =5;
  1199.  
  1200. CONST
  1201.      MF_INSERT           =$00000000;
  1202.      MF_CHANGE           =$00000080;
  1203.      MF_APPEND           =$00000100;
  1204.      MF_DELETE           =$00000200;
  1205.      MF_REMOVE           =$00001000;
  1206.      MF_BYCOMMAND        =$00000000;
  1207.      MF_BYPOSITION       =$00000400;
  1208.      MF_SEPARATOR        =$00000800;
  1209.      MF_ENABLED          =$00000000;
  1210.      MF_GRAYED           =$00000001;
  1211.      MF_DISABLED         =$00000002;
  1212.      MF_UNCHECKED        =$00000000;
  1213.      MF_CHECKED          =$00000008;
  1214.      MF_USECHECKBITMAPS  =$00000200;
  1215.      MF_STRING           =$00000000;
  1216.      MF_BITMAP           =$00000004;
  1217.      MF_OWNERDRAW        =$00000100;
  1218.      MF_POPUP            =$00000010;
  1219.      MF_MENUBARBREAK     =$00000020;
  1220.      MF_MENUBREAK        =$00000040;
  1221.      MF_UNHILITE         =$00000000;
  1222.      MF_HILITE           =$00000080;
  1223.      MF_SYSMENU          =$00002000;
  1224.      MF_HELP             =$00004000;
  1225.      MF_MOUSESELECT      =$00008000;
  1226.  
  1227. TYPE
  1228.     PMENUITEMTEMPLATEHEADER=^MENUITEMTEMPLATEHEADER;
  1229.     MENUITEMTEMPLATEHEADER=RECORD
  1230.                                  versionNumber:WORD;
  1231.                                  offset:WORD;
  1232.     END;
  1233.  
  1234.     PMENUITEMTEMPLATE=^MENUITEMTEMPLATE;
  1235.     MENUITEMTEMPLATE=RECORD
  1236.                            mtOption:WORD;
  1237.                            mtID:WORD;
  1238.                            mtString:ARRAY[0..0] OF WCHAR;
  1239.     END;
  1240.  
  1241. CONST
  1242.      MF_END             =$00000080;
  1243.  
  1244. CONST
  1245.      SC_SIZE         =$F000;
  1246.      SC_MOVE         =$F010;
  1247.      SC_MINIMIZE     =$F020;
  1248.      SC_MAXIMIZE     =$F030;
  1249.      SC_NEXTWINDOW   =$F040;
  1250.      SC_PREVWINDOW   =$F050;
  1251.      SC_CLOSE        =$F060;
  1252.      SC_VSCROLL      =$F070;
  1253.      SC_HSCROLL      =$F080;
  1254.      SC_MOUSEMENU    =$F090;
  1255.      SC_KEYMENU      =$F100;
  1256.      SC_ARRANGE      =$F110;
  1257.      SC_RESTORE      =$F120;
  1258.      SC_TASKLIST     =$F130;
  1259.      SC_SCREENSAVE   =$F140;
  1260.      SC_HOTKEY       =$F150;
  1261.      SC_ICON         =SC_MINIMIZE;
  1262.      SC_ZOOM         =SC_MAXIMIZE;
  1263.  
  1264. CONST
  1265.      IDC_ARROW           =PChar(32512);
  1266.      IDC_IBEAM           =PChar(32513);
  1267.      IDC_WAIT            =PChar(32514);
  1268.      IDC_CROSS           =PChar(32515);
  1269.      IDC_UPARROW         =PChar(32516);
  1270.      IDC_SIZE            =PChar(32640);
  1271.      IDC_ICON            =PChar(32641);
  1272.      IDC_SIZENWSE        =PChar(32642);
  1273.      IDC_SIZENESW        =PChar(32643);
  1274.      IDC_SIZEWE          =PChar(32644);
  1275.      IDC_SIZENS          =PChar(32645);
  1276.      IDC_SIZEALL         =PChar(32646);
  1277.      IDC_NO              =PChar(32648);
  1278.      IDC_APPSTARTING     =PChar(32650);
  1279.      IDC_HELP            =PChar(32651);
  1280.  
  1281.      IDC_NODROP          =PChar(32767);
  1282.      IDC_DRAG            =PChar(32766);
  1283.      IDC_HSPLIT          =PChar(14{32765});
  1284.      IDC_VSPLIT          =PChar(15{32764});
  1285.      IDC_MULTIDRAG       =PChar(32763);
  1286.      IDC_SQLWAIT         =PChar(32762);
  1287.  
  1288.  
  1289. TYPE
  1290.     PICONINFO=^ICONINFO;
  1291.     ICONINFO=RECORD
  1292.                    fIcon:BOOL;
  1293.                    xHotspot:ULONG;
  1294.                    yHotspot:ULONG;
  1295.                    hbmMask:HBITMAP;
  1296.                    hbmColor:HBITMAP;
  1297.     END;
  1298.  
  1299. CONST
  1300.      OBM_CLOSE           =32754;
  1301.      OBM_UPARROW         =32753;
  1302.      OBM_DNARROW         =32752;
  1303.      OBM_RGARROW         =32751;
  1304.      OBM_LFARROW         =32750;
  1305.      OBM_REDUCE          =32749;
  1306.      OBM_ZOOM            =32748;
  1307.      OBM_RESTORE         =32747;
  1308.      OBM_REDUCED         =32746;
  1309.      OBM_ZOOMD           =32745;
  1310.      OBM_RESTORED        =32744;
  1311.      OBM_UPARROWD        =32743;
  1312.      OBM_DNARROWD        =32742;
  1313.      OBM_RGARROWD        =32741;
  1314.      OBM_LFARROWD        =32740;
  1315.      OBM_MNARROW         =32739;
  1316.      OBM_COMBO           =32738;
  1317.      OBM_UPARROWI        =32737;
  1318.      OBM_DNARROWI        =32736;
  1319.      OBM_RGARROWI        =32735;
  1320.      OBM_LFARROWI        =32734;
  1321.      OBM_OLD_CLOSE       =32767;
  1322.      OBM_SIZE            =32766;
  1323.      OBM_OLD_UPARROW     =32765;
  1324.      OBM_OLD_DNARROW     =32764;
  1325.      OBM_OLD_RGARROW     =32763;
  1326.      OBM_OLD_LFARROW     =32762;
  1327.      OBM_BTSIZE          =32761;
  1328.      OBM_CHECK           =32760;
  1329.      OBM_CHECKBOXES      =32759;
  1330.      OBM_BTNCORNERS      =32758;
  1331.      OBM_OLD_REDUCE      =32757;
  1332.      OBM_OLD_ZOOM        =32756;
  1333.      OBM_OLD_RESTORE     =32755;
  1334.      OCR_NORMAL          =32512;
  1335.      OCR_IBEAM           =32513;
  1336.      OCR_WAIT            =32514;
  1337.      OCR_CROSS           =32515;
  1338.      OCR_UP              =32516;
  1339.      OCR_SIZE            =32640;
  1340.      OCR_ICON            =32641;
  1341.      OCR_SIZENWSE        =32642;
  1342.      OCR_SIZENESW        =32643;
  1343.      OCR_SIZEWE          =32644;
  1344.      OCR_SIZENS          =32645;
  1345.      OCR_SIZEALL         =32646;
  1346.      OCR_ICOCUR          =32647;
  1347.      OCR_NO              =32648;
  1348.      OIC_SAMPLE          =32512;
  1349.      OIC_HAND            =32513;
  1350.      OIC_QUES            =32514;
  1351.      OIC_BANG            =32515;
  1352.      OIC_NOTE            =32516;
  1353.      ORD_LANGDRIVER      =1;
  1354.  
  1355. CONST
  1356.      IDI_APPLICATION     =32512;
  1357.      IDI_HAND            =32513;
  1358.      IDI_QUESTION        =32514;
  1359.      IDI_EXCLAMATION     =32515;
  1360.      IDI_ASTERISK        =32516;
  1361.  
  1362. CONST
  1363.      IDOK                =1;
  1364.      IDCANCEL            =2;
  1365.      IDABORT             =3;
  1366.      IDRETRY             =4;
  1367.      IDIGNORE            =5;
  1368.      IDYES               =6;
  1369.      IDNO                =7;
  1370.  
  1371. CONST
  1372.      ES_LEFT             =$0000;
  1373.      ES_CENTER           =$0001;
  1374.      ES_RIGHT            =$0002;
  1375.      ES_MULTILINE        =$0004;
  1376.      ES_UPPERCASE        =$0008;
  1377.      ES_LOWERCASE        =$0010;
  1378.      ES_PASSWORD         =$0020;
  1379.      ES_AUTOVSCROLL      =$0040;
  1380.      ES_AUTOHSCROLL      =$0080;
  1381.      ES_NOHIDESEL        =$0100;
  1382.      ES_OEMCONVERT       =$0400;
  1383.      ES_READONLY         =$0800;
  1384.      ES_WANTRETURN       =$1000;
  1385.  
  1386.      EN_SETFOCUS         =$0100;
  1387.      EN_KILLFOCUS        =$0200;
  1388.      EN_CHANGE           =$0300;
  1389.      EN_UPDATE           =$0400;
  1390.      EN_ERRSPACE         =$0500;
  1391.      EN_MAXTEXT          =$0501;
  1392.      EN_HSCROLL          =$0601;
  1393.      EN_VSCROLL          =$0602;
  1394.  
  1395.      EM_GETSEL               =$00B0;
  1396.      EM_SETSEL               =$00B1;
  1397.      EM_GETRECT              =$00B2;
  1398.      EM_SETRECT              =$00B3;
  1399.      EM_SETRECTNP            =$00B4;
  1400.      EM_SCROLL               =$00B5;
  1401.      EM_LINESCROLL           =$00B6;
  1402.      EM_SCROLLCARET          =$00B7;
  1403.      EM_GETMODIFY            =$00B8;
  1404.      EM_SETMODIFY            =$00B9;
  1405.      EM_GETLINECOUNT         =$00BA;
  1406.      EM_LINEINDEX            =$00BB;
  1407.      EM_SETHANDLE            =$00BC;
  1408.      EM_GETHANDLE            =$00BD;
  1409.      EM_GETTHUMB             =$00BE;
  1410.      EM_LINELENGTH           =$00C1;
  1411.      EM_REPLACESEL           =$00C2;
  1412.      EM_GETLINE              =$00C4;
  1413.      EM_LIMITTEXT            =$00C5;
  1414.      EM_CANUNDO              =$00C6;
  1415.      EM_UNDO                 =$00C7;
  1416.      EM_FMTLINES             =$00C8;
  1417.      EM_LINEFROMCHAR         =$00C9;
  1418.      EM_SETTABSTOPS          =$00CB;
  1419.      EM_SETPASSWORDCHAR      =$00CC;
  1420.      EM_EMPTYUNDOBUFFER      =$00CD;
  1421.      EM_GETFIRSTVISIBLELINE  =$00CE;
  1422.      EM_SETREADONLY          =$00CF;
  1423.      EM_SETWORDBREAKPROC     =$00D0;
  1424.      EM_GETWORDBREAKPROC     =$00D1;
  1425.      EM_GETPASSWORDCHAR      =$00D2;
  1426.  
  1427.      WB_LEFT            =0;
  1428.      WB_RIGHT           =1;
  1429.      WB_ISDELIMITER     =2;
  1430.  
  1431.      BS_PUSHBUTTON       =$00000000;
  1432.      BS_DEFPUSHBUTTON    =$00000001;
  1433.      BS_CHECKBOX         =$00000002;
  1434.      BS_AUTOCHECKBOX     =$00000003;
  1435.      BS_RADIOBUTTON      =$00000004;
  1436.      BS_3STATE           =$00000005;
  1437.      BS_AUTO3STATE       =$00000006;
  1438.      BS_GROUPBOX         =$00000007;
  1439.      BS_USERBUTTON       =$00000008;
  1440.      BS_AUTORADIOBUTTON  =$00000009;
  1441.      BS_OWNERDRAW        =$0000000B;
  1442.      BS_LEFTTEXT         =$00000020;
  1443.  
  1444.      BN_CLICKED          =0;
  1445.      BN_PAINT            =1;
  1446.      BN_HILITE           =2;
  1447.      BN_UNHILITE         =3;
  1448.      BN_DISABLE          =4;
  1449.      BN_DOUBLECLICKED    =5;
  1450.  
  1451.      BM_GETCHECK        =$00F0;
  1452.      BM_SETCHECK        =$00F1;
  1453.      BM_GETSTATE        =$00F2;
  1454.      BM_SETSTATE        =$00F3;
  1455.      BM_SETSTYLE        =$00F4;
  1456.  
  1457.      SS_LEFT             =$00000000;
  1458.      SS_CENTER           =$00000001;
  1459.      SS_RIGHT            =$00000002;
  1460.      SS_ICON             =$00000003;
  1461.      SS_BLACKRECT        =$00000004;
  1462.      SS_GRAYRECT         =$00000005;
  1463.      SS_WHITERECT        =$00000006;
  1464.      SS_BLACKFRAME       =$00000007;
  1465.      SS_GRAYFRAME        =$00000008;
  1466.      SS_WHITEFRAME       =$00000009;
  1467.      SS_USERITEM         =$0000000A;
  1468.      SS_SIMPLE           =$0000000B;
  1469.      SS_LEFTNOWORDWRAP   =$0000000C;
  1470.      SS_NOPREFIX         =$00000080;
  1471.  
  1472.      STM_SETICON         =$0170;
  1473.      STM_GETICON         =$0171;
  1474.      STM_MSGMAX          =$0172;
  1475.  
  1476.      WC_DIALOG           =$8002;
  1477.  
  1478.      DWL_MSGRESULT   =0;
  1479.      DWL_DLGPROC     =4;
  1480.      DWL_USER        =8;
  1481.  
  1482. CONST
  1483.      DDL_READWRITE       =$0000;
  1484.      DDL_READONLY        =$0001;
  1485.      DDL_HIDDEN          =$0002;
  1486.      DDL_SYSTEM          =$0004;
  1487.      DDL_DIRECTORY       =$0010;
  1488.      DDL_ARCHIVE         =$0020;
  1489.      DDL_POSTMSGS        =$2000;
  1490.      DDL_DRIVES          =$4000;
  1491.      DDL_EXCLUSIVE       =$8000;
  1492.  
  1493. CONST
  1494.      DS_ABSALIGN         =$01;
  1495.      DS_SYSMODAL         =$02;
  1496.      DS_LOCALEDIT        =$20;
  1497.      DS_SETFONT          =$40;
  1498.      DS_MODALFRAME       =$80;
  1499.      DS_NOIDLEMSG        =$100;
  1500.      DS_SETFOREGROUND    =$200;
  1501.      DM_GETDEFID         =WM_USER+0;
  1502.      DM_SETDEFID         =WM_USER+1;
  1503.      DC_HASDEFID         =$534B;
  1504.  
  1505.      DLGC_WANTARROWS     =$0001;
  1506.      DLGC_WANTTAB        =$0002;
  1507.      DLGC_WANTALLKEYS    =$0004;
  1508.      DLGC_WANTMESSAGE    =$0004;
  1509.      DLGC_HASSETSEL      =$0008;
  1510.      DLGC_DEFPUSHBUTTON  =$0010;
  1511.      DLGC_UNDEFPUSHBUTTON=$0020;
  1512.      DLGC_RADIOBUTTON    =$0040;
  1513.      DLGC_WANTCHARS      =$0080;
  1514.      DLGC_STATIC         =$0100;
  1515.      DLGC_BUTTON         =$2000;
  1516.      LB_CTLCODE          =0;
  1517.  
  1518.      LB_OKAY             =0;
  1519.      LB_ERR              =-1;
  1520.      LB_ERRSPACE         =-2;
  1521.  
  1522.      LBN_ERRSPACE        =-2;
  1523.      LBN_SELCHANGE       =1;
  1524.      LBN_DBLCLK          =2;
  1525.      LBN_SELCANCEL       =3;
  1526.      LBN_SETFOCUS        =4;
  1527.      LBN_KILLFOCUS       =5;
  1528.  
  1529.      LB_ADDSTRING            =$0180;
  1530.      LB_INSERTSTRING         =$0181;
  1531.      LB_DELETESTRING         =$0182;
  1532.      LB_SELITEMRANGEEX       =$0183;
  1533.      LB_RESETCONTENT         =$0184;
  1534.      LB_SETSEL               =$0185;
  1535.      LB_SETCURSEL            =$0186;
  1536.      LB_GETSEL               =$0187;
  1537.      LB_GETCURSEL            =$0188;
  1538.      LB_GETTEXT              =$0189;
  1539.      LB_GETTEXTLEN           =$018A;
  1540.      LB_GETCOUNT             =$018B;
  1541.      LB_SELECTSTRING         =$018C;
  1542.      LB_DIR                  =$018D;
  1543.      LB_GETTOPINDEX          =$018E;
  1544.      LB_FINDSTRING           =$018F;
  1545.      LB_GETSELCOUNT          =$0190;
  1546.      LB_GETSELITEMS          =$0191;
  1547.      LB_SETTABSTOPS          =$0192;
  1548.      LB_GETHORIZONTALEXTENT  =$0193;
  1549.      LB_SETHORIZONTALEXTENT  =$0194;
  1550.      LB_SETCOLUMNWIDTH       =$0195;
  1551.      LB_ADDFILE              =$0196;
  1552.      LB_SETTOPINDEX          =$0197;
  1553.      LB_GETITEMRECT          =$0198;
  1554.      LB_GETITEMDATA          =$0199;
  1555.      LB_SETITEMDATA          =$019A;
  1556.      LB_SELITEMRANGE         =$019B;
  1557.      LB_SETANCHORINDEX       =$019C;
  1558.      LB_GETANCHORINDEX       =$019D;
  1559.      LB_SETCARETINDEX        =$019E;
  1560.      LB_GETCARETINDEX        =$019F;
  1561.      LB_SETITEMHEIGHT        =$01A0;
  1562.      LB_GETITEMHEIGHT        =$01A1;
  1563.      LB_FINDSTRINGEXACT      =$01A2;
  1564.      LB_SETLOCALE            =$01A5;
  1565.      LB_GETLOCALE            =$01A6;
  1566.      LB_SETCOUNT             =$01A7;
  1567.      LB_MSGMAX               =$01A8;
  1568.  
  1569.      LBS_NOTIFY            =$0001;
  1570.      LBS_SORT              =$0002;
  1571.      LBS_NOREDRAW          =$0004;
  1572.      LBS_MULTIPLESEL       =$0008;
  1573.      LBS_OWNERDRAWFIXED    =$0010;
  1574.      LBS_OWNERDRAWVARIABLE =$0020;
  1575.      LBS_HASSTRINGS        =$0040;
  1576.      LBS_USETABSTOPS       =$0080;
  1577.      LBS_NOINTEGRALHEIGHT  =$0100;
  1578.      LBS_MULTICOLUMN       =$0200;
  1579.      LBS_WANTKEYBOARDINPUT =$0400;
  1580.      LBS_EXTENDEDSEL       =$0800;
  1581.      LBS_DISABLENOSCROLL   =$1000;
  1582.      LBS_NODATA            =$2000;
  1583.      LBS_STANDARD          =LBS_NOTIFY OR LBS_SORT OR WS_VSCROLL OR WS_BORDER;
  1584.  
  1585.      CB_OKAY             =0;
  1586.      CB_ERR              =-1;
  1587.      CB_ERRSPACE         =-2;
  1588.  
  1589.      CBN_ERRSPACE        =-1;
  1590.      CBN_SELCHANGE       =1;
  1591.      CBN_DBLCLK          =2;
  1592.      CBN_SETFOCUS        =3;
  1593.      CBN_KILLFOCUS       =4;
  1594.      CBN_EDITCHANGE      =5;
  1595.      CBN_EDITUPDATE      =6;
  1596.      CBN_DROPDOWN        =7;
  1597.      CBN_CLOSEUP         =8;
  1598.      CBN_SELENDOK        =9;
  1599.      CBN_SELENDCANCEL    =10;
  1600.  
  1601.      CBS_SIMPLE            =$0001;
  1602.      CBS_DROPDOWN          =$0002;
  1603.      CBS_DROPDOWNLIST      =$0003;
  1604.      CBS_OWNERDRAWFIXED    =$0010;
  1605.      CBS_OWNERDRAWVARIABLE =$0020;
  1606.      CBS_AUTOHSCROLL       =$0040;
  1607.      CBS_OEMCONVERT        =$0080;
  1608.      CBS_SORT              =$0100;
  1609.      CBS_HASSTRINGS        =$0200;
  1610.      CBS_NOINTEGRALHEIGHT  =$0400;
  1611.      CBS_DISABLENOSCROLL   =$0800;
  1612.  
  1613.      CB_GETEDITSEL               =$0140;
  1614.      CB_LIMITTEXT                =$0141;
  1615.      CB_SETEDITSEL               =$0142;
  1616.      CB_ADDSTRING                =$0143;
  1617.      CB_DELETESTRING             =$0144;
  1618.      CB_DIR                      =$0145;
  1619.      CB_GETCOUNT                 =$0146;
  1620.      CB_GETCURSEL                =$0147;
  1621.      CB_GETLBTEXT                =$0148;
  1622.      CB_GETLBTEXTLEN             =$0149;
  1623.      CB_INSERTSTRING             =$014A;
  1624.      CB_RESETCONTENT             =$014B;
  1625.      CB_FINDSTRING               =$014C;
  1626.      CB_SELECTSTRING             =$014D;
  1627.      CB_SETCURSEL                =$014E;
  1628.      CB_SHOWDROPDOWN             =$014F;
  1629.      CB_GETITEMDATA              =$0150;
  1630.      CB_SETITEMDATA              =$0151;
  1631.      CB_GETDROPPEDCONTROLRECT    =$0152;
  1632.      CB_SETITEMHEIGHT            =$0153;
  1633.      CB_GETITEMHEIGHT            =$0154;
  1634.      CB_SETEXTENDEDUI            =$0155;
  1635.      CB_GETEXTENDEDUI            =$0156;
  1636.      CB_GETDROPPEDSTATE          =$0157;
  1637.      CB_FINDSTRINGEXACT          =$0158;
  1638.      CB_SETLOCALE                =$0159;
  1639.      CB_GETLOCALE                =$015A;
  1640.      CB_MSGMAX                   =$015B;
  1641.  
  1642.      SBS_HORZ                    =$0000;
  1643.      SBS_VERT                    =$0001;
  1644.      SBS_TOPALIGN                =$0002;
  1645.      SBS_LEFTALIGN               =$0002;
  1646.      SBS_BOTTOMALIGN             =$0004;
  1647.      SBS_RIGHTALIGN              =$0004;
  1648.      SBS_SIZEBOXTOPLEFTALIGN     =$0002;
  1649.      SBS_SIZEBOXBOTTOMRIGHTALIGN =$0004;
  1650.      SBS_SIZEBOX                 =$0008;
  1651.  
  1652.      SBM_SETPOS                  =$00E0;
  1653.      SBM_GETPOS                  =$00E1;
  1654.      SBM_SETRANGE                =$00E2;
  1655.      SBM_GETRANGE                =$00E3;
  1656.      SBM_ENABLE_ARROWS           =$00E4;
  1657.      SBM_SETRANGEREDRAW          =$00E6;
  1658.      SBM_SETSCROLLINFO           =$00E9;
  1659.      SBM_GETSCROLLINFO           =$00EA;
  1660.  
  1661.      SIF_RANGE                   =$0001;
  1662.      SIF_PAGE                    =$0002;
  1663.      SIF_POS                     =$0004;
  1664.      SIF_DISABLENOSCROLL         =$0008;
  1665.      SIF_TRACKPOS                =$0010;
  1666.      SIF_ALL                     =$0017;
  1667.  
  1668.      MDIS_ALLCHILDSTYLES         =$0001;
  1669.  
  1670.      MDITILE_VERTICAL            =$0000;
  1671.      MDITILE_HORIZONTAL          =$0001;
  1672.      MDITILE_SKIPDISABLED        =$0002;
  1673.  
  1674.  
  1675. TYPE
  1676.     TScrollInfo=RECORD
  1677.                       cbSize:LONGINT;
  1678.                       fMask:LONGINT;
  1679.                       nMin:LONGINT;
  1680.                       nMax:LONGINT;
  1681.                       nPage:LONGINT;
  1682.                       nPos:LONGINT;
  1683.                       nTrackPos:LONGINT;
  1684.     END;
  1685.  
  1686.  
  1687.     PMDICREATESTRUCT=^MDICREATESTRUCT;
  1688.     MDICREATESTRUCT=RECORD
  1689.                           szClass:PChar;
  1690.                           szTitle:PChar;
  1691.                           hOwner:HANDLE;
  1692.                           x:LONGINT;
  1693.                           y:LONGINT;
  1694.                           cx:LONGINT;
  1695.                           cy:LONGINT;
  1696.                           style:ULONG;
  1697.                           lParam:LPARAM;
  1698.     END;
  1699.     LPMDICREATESTRUCT=PMDICREATESTRUCT;
  1700.  
  1701.     PCLIENTCREATESTRUCT=^CLIENTCREATESTRUCT;
  1702.     CLIENTCREATESTRUCT=RECORD
  1703.                              hWindowMenu:HANDLE;
  1704.                              idFirstChild:ULONG;
  1705.     END;
  1706.     LPCLIENTCREATESTRUCT=PCLIENTCREATESTRUCT;
  1707.  
  1708.  
  1709.     HELPPOLY=ULONG;
  1710.     PMULTIKEYHELP=^MULTIKEYHELP;
  1711.     MULTIKEYHELP=RECORD
  1712.                        mkSize:ULONG;
  1713.                        mkKeylist:CHAR;
  1714.                        szKeyphrase:ARRAY[0..0] OF CHAR;
  1715.     END;
  1716.     LPMULTIKEYHELP=PMULTIKEYHELP;
  1717.  
  1718.     PHELPWININFO=^HELPWININFO;
  1719.     HELPWININFO=RECORD
  1720.                       wStructSize:LONGINT;
  1721.                       x:LONGINT;
  1722.                       y:LONGINT;
  1723.                       dx:LONGINT;
  1724.                       dy:LONGINT;
  1725.                       wMax:LONGINT;
  1726.                       rgchMember:ARRAY[0..1] OF CHAR;
  1727.     END;
  1728.     LPHELPWININFO=PHELPWININFO;
  1729.  
  1730. CONST
  1731.      HELP_CONTEXT      =$0001;
  1732.      HELP_QUIT         =$0002;
  1733.      HELP_INDEX        =$0003;
  1734.      HELP_CONTENTS     =$0003;
  1735.      HELP_HELPONHELP   =$0004;
  1736.      HELP_SETINDEX     =$0005;
  1737.      HELP_SETCONTENTS  =$0005;
  1738.      HELP_CONTEXTPOPUP =$0008;
  1739.      HELP_FORCEFILE    =$0009;
  1740.      HELP_KEY          =$0101;
  1741.      HELP_COMMAND      =$0102;
  1742.      HELP_PARTIALKEY   =$0105;
  1743.      HELP_MULTIKEY     =$0201;
  1744.      HELP_SETWINPOS    =$0203;
  1745.  
  1746. CONST
  1747.      SPI_GETBEEP                 =1;
  1748.      SPI_SETBEEP                 =2;
  1749.      SPI_GETMOUSE                =3;
  1750.      SPI_SETMOUSE                =4;
  1751.      SPI_GETBORDER               =5;
  1752.      SPI_SETBORDER               =6;
  1753.      SPI_GETKEYBOARDSPEED       =10;
  1754.      SPI_SETKEYBOARDSPEED       =11;
  1755.      SPI_LANGDRIVER             =12;
  1756.      SPI_ICONHORIZONTALSPACING  =13;
  1757.      SPI_GETSCREENSAVETIMEOUT   =14;
  1758.      SPI_SETSCREENSAVETIMEOUT   =15;
  1759.      SPI_GETSCREENSAVEACTIVE    =16;
  1760.      SPI_SETSCREENSAVEACTIVE    =17;
  1761.      SPI_GETGRIDGRANULARITY     =18;
  1762.      SPI_SETGRIDGRANULARITY     =19;
  1763.      SPI_SETDESKWALLPAPER       =20;
  1764.      SPI_SETDESKPATTERN         =21;
  1765.      SPI_GETKEYBOARDDELAY       =22;
  1766.      SPI_SETKEYBOARDDELAY       =23;
  1767.      SPI_ICONVERTICALSPACING    =24;
  1768.      SPI_GETICONTITLEWRAP       =25;
  1769.      SPI_SETICONTITLEWRAP       =26;
  1770.      SPI_GETMENUDROPALIGNMENT   =27;
  1771.      SPI_SETMENUDROPALIGNMENT   =28;
  1772.      SPI_SETDOUBLECLKWIDTH      =29;
  1773.      SPI_SETDOUBLECLKHEIGHT     =30;
  1774.      SPI_GETICONTITLELOGFONT    =31;
  1775.      SPI_SETDOUBLECLICKTIME     =32;
  1776.      SPI_SETMOUSEBUTTONSWAP     =33;
  1777.      SPI_SETICONTITLELOGFONT    =34;
  1778.      SPI_GETFASTTASKSWITCH      =35;
  1779.      SPI_SETFASTTASKSWITCH      =36;
  1780.      SPI_GETFILTERKEYS          =50;
  1781.      SPI_SETFILTERKEYS          =51;
  1782.      SPI_GETTOGGLEKEYS          =52;
  1783.      SPI_SETTOGGLEKEYS          =53;
  1784.      SPI_GETMOUSEKEYS           =54;
  1785.      SPI_SETMOUSEKEYS           =55;
  1786.      SPI_GETSHOWSOUNDS          =56;
  1787.      SPI_SETSHOWSOUNDS          =57;
  1788.      SPI_GETSTICKYKEYS          =58;
  1789.      SPI_SETSTICKYKEYS          =59;
  1790.      SPI_GETACCESSTIMEOUT       =60;
  1791.      SPI_SETACCESSTIMEOUT       =61;
  1792.      SPI_GETSOUNDSENTRY         =64;
  1793.      SPI_SETSOUNDSENTRY         =65;
  1794.  
  1795.      SPIF_UPDATEINIFILE    =$0001;
  1796.      SPIF_SENDWININICHANGE =$0002;
  1797.      SPIF_SENDCHANGE       =SPIF_SENDWININICHANGE;
  1798.  
  1799.      SSWF_NONE       =0;
  1800.      SSWF_TITLE      =1;
  1801.      SSWF_WINDOW     =2;
  1802.      SSWF_DISPLAY    =3;
  1803.      SSWF_CUSTOM     =4;
  1804.  
  1805.      SSGF_NONE       =0;
  1806.      SSGF_DISPLAY    =3;
  1807.  
  1808.      SSTF_NONE       =0;
  1809.      SSTF_CHARS      =1;
  1810.      SSTF_BORDER     =2;
  1811.      SSTF_DISPLAY    =3;
  1812.  
  1813. TYPE
  1814.     PFILTERKEYS=^FILTERKEYS;
  1815.     FILTERKEYS=RECORD
  1816.                      cbSize:ULONG;
  1817.                      dwFlags:ULONG;
  1818.                      iWaitMSec:ULONG;
  1819.                      iDelayMSec:ULONG;
  1820.                      iRepeatMSec:ULONG;
  1821.                      iBounceMSec:ULONG;
  1822.     END;
  1823.     LPFILTERKEYS=PFILTERKEYS;
  1824.  
  1825. CONST
  1826.      FKF_FILTERKEYSON    =$00000001;
  1827.      FKF_AVAILABLE       =$00000002;
  1828.      FKF_HOTKEYACTIVE    =$00000004;
  1829.      FKF_CONFIRMHOTKEY   =$00000008;
  1830.      FKF_HOTKEYSOUND     =$00000010;
  1831.      FKF_INDICATOR       =$00000020;
  1832.      FKF_CLICKON         =$00000040;
  1833.  
  1834. TYPE
  1835.     PSTICKYKEYS=^STICKYKEYS;
  1836.     STICKYKEYS=RECORD
  1837.                      cbSize:ULONG;
  1838.                      dwFlags:ULONG;
  1839.     END;
  1840.     LPSTICKYKEYS=PSTICKYKEYS;
  1841.  
  1842. CONST
  1843.      SKF_STICKYKEYSON    =$00000001;
  1844.      SKF_AVAILABLE       =$00000002;
  1845.      SKF_HOTKEYACTIVE    =$00000004;
  1846.      SKF_CONFIRMHOTKEY   =$00000008;
  1847.      SKF_HOTKEYSOUND     =$00000010;
  1848.      SKF_INDICATOR       =$00000020;
  1849.      SKF_AUDIBLEFEEDBACK =$00000040;
  1850.      SKF_TRISTATE        =$00000080;
  1851.      SKF_TWOKEYSOFF      =$00000100;
  1852.  
  1853. TYPE
  1854.     PMOUSEKEYS=^MOUSEKEYS;
  1855.     MOUSEKEYS=RECORD
  1856.                     cbSize:ULONG;
  1857.                     dwFlags:ULONG;
  1858.                     iMaxSpeed:ULONG;
  1859.                     iTimeToMaxSpeed:ULONG;
  1860.                     iCtrlSpeed:ULONG;
  1861.                     dwReserved1:ULONG;
  1862.                     dwReserved2:ULONG;
  1863.     END;
  1864.     LPMOUSEKEYS=PMOUSEKEYS;
  1865.  
  1866. CONST
  1867.      MKF_MOUSEKEYSON     =$00000001;
  1868.      MKF_AVAILABLE       =$00000002;
  1869.      MKF_HOTKEYACTIVE    =$00000004;
  1870.      MKF_CONFIRMHOTKEY   =$00000008;
  1871.      MKF_HOTKEYSOUND     =$00000010;
  1872.      MKF_INDICATOR       =$00000020;
  1873.      MKF_MODIFIERS       =$00000040;
  1874.      MKF_REPLACENUMBERS  =$00000080;
  1875.  
  1876. TYPE
  1877.     PACCESSTIMEOUT=^ACCESSTIMEOUT;
  1878.     ACCESSTIMEOUT=RECORD
  1879.                         cbSize:ULONG;
  1880.                         dwFlags:ULONG;
  1881.                         iTimeOutMSec:ULONG;
  1882.     END;
  1883.     LPACCESSTIMEOUT=PACCESSTIMEOUT;
  1884.  
  1885. CONST
  1886.      ATF_TIMEOUTON       =$00000001;
  1887.      ATF_ONOFFFEEDBACK   =$00000002;
  1888.  
  1889. TYPE
  1890.     PSOUNDSENTRY=^SOUNDSENTRY;
  1891.     SOUNDSENTRY=RECORD
  1892.                       cbSize:ULONG;
  1893.                       dwFlags:ULONG;
  1894.                       iFSTextEffect:ULONG;
  1895.                       iFSTextEffectMSec:ULONG;
  1896.                       iFSTextEffectColorBits:ULONG;
  1897.                       iFSGrafEffect:ULONG;
  1898.                       iFSGrafEffectMSec:ULONG;
  1899.                       iFSGrafEffectColor:ULONG;
  1900.                       iWindowsEffect:ULONG;
  1901.                       iWindowsEffectMSec:ULONG;
  1902.                       lpszWindowsEffectDLL:PChar;
  1903.                       iWindowsEffectOrdinal:ULONG;
  1904.     END;
  1905.     LPSOUNDSENTRY=PSOUNDSENTRY;
  1906.  
  1907. CONST
  1908.      SSF_SOUNDSENTRYON   =$00000001;
  1909.      SSF_AVAILABLE       =$00000002;
  1910.      SSF_INDICATOR       =$00000004;
  1911.  
  1912. TYPE
  1913.     PTOGGLEKEYS=^TOGGLEKEYS;
  1914.     TOGGLEKEYS=RECORD
  1915.                      cbSize:ULONG;
  1916.                      dwFlags:ULONG;
  1917.     END;
  1918.  
  1919. CONST
  1920.      TKF_TOGGLEKEYSON    =$00000001;
  1921.      TKF_AVAILABLE       =$00000002;
  1922.      TKF_HOTKEYACTIVE    =$00000004;
  1923.      TKF_CONFIRMHOTKEY   =$00000008;
  1924.      TKF_HOTKEYSOUND     =$00000010;
  1925.      TKF_INDICATOR       =$00000020;
  1926.  
  1927. CONST
  1928.      SLE_ERROR          =$00000001;
  1929.      SLE_MINORERROR     =$00000002;
  1930.      SLE_WARNING        =$00000003;
  1931.  
  1932. TYPE
  1933.     NMHDR=RECORD
  1934.                 hwndFrom:HWND;
  1935.                 idFrom:LONGWORD;
  1936.                 code:LONGWORD;
  1937.     END;
  1938.  
  1939. CONST
  1940.     IMAGE_BITMAP        =0;
  1941.     IMAGE_ICON          =1;
  1942.     IMAGE_CURSOR        =2;
  1943.     IMAGE_ENHMETAFILE   =3;
  1944.  
  1945.     LR_DEFAULTCOLOR     =$0000;
  1946.     LR_MONOCHROME       =$0001;
  1947.     LR_COLOR            =$0002;
  1948.     LR_COPYRETURNORG    =$0004;
  1949.     LR_COPYDELETEORG    =$0008;
  1950.     LR_LOADFROMFILE     =$0010;
  1951.     LR_LOADTRANSPARENT  =$0020;
  1952.     LR_DEFAULTSIZE      =$0040;
  1953.     LR_LOADMAP3DCOLORS  =$1000;
  1954.     LR_CREATEDIBSECTION =$2000;
  1955.     LR_COPYFROMRESOURCE =$4000;
  1956.     LR_SHARED           =$8000;
  1957.  
  1958. CONST
  1959.   CWP_ALL             = 0;
  1960.   CWP_SKIPINVISIBLE   = 1;
  1961.   CWP_SKIPDISABLED    = 2;
  1962.   CWP_SKIPTRANSPARENT = 4;
  1963.  
  1964. IMPORTS
  1965.       {$IFDEF Win95}
  1966.       FUNCTION wvsprintf(VAR str1:CSTRING;CONST str2:CSTRING;arglist:POINTER):LONGINT;
  1967.                       APIENTRY; 'USER32' name 'wvsprintfA';
  1968.       FUNCTION LoadKeyboardLayout(CONST pwstKLID:CSTRING;Flags:ULONG):HKL;
  1969.                       APIENTRY; 'USER32' name 'LoadKeyboardLayoutA';
  1970.       FUNCTION ActivateKeyboardLayout(ahkl:HKL;Flags:ULONG):BOOL;
  1971.                       APIENTRY; 'USER32' name 'ActivateKeyboardLayout';
  1972.       FUNCTION UnloadKeyboardLayout(ahkl:HKL):BOOL;
  1973.                       APIENTRY; 'USER32' name 'UnloadKeyboardLayout';
  1974.       FUNCTION GetKeyboardLayoutName(VAR pwszKLID:CSTRING):BOOL;
  1975.                       APIENTRY; 'USER32' name 'GetKeyboardLayoutNameA';
  1976.       FUNCTION GetThreadDesktop(para:ULONG):HDESK;
  1977.                       APIENTRY; 'USER32' name 'GetThreadDesktop';
  1978.       FUNCTION GetProcessWindowStation:HWINSTA;
  1979.                       APIENTRY; 'USER32' name 'GetProcessWindowStation';
  1980.       {FUNCTION SetUserObjectSecurity(hObj:HANDLE;VAR pSIRequested:SECURITY_INFORMATION;
  1981.                                      VAR pSID:SECURITY_DESCRIPTOR):BOOL;
  1982.                       APIENTRY; 'USER32' name 'SetUserObjectSecurity';
  1983.       FUNCTION GetUserObjectSecurity(hObj:HANDLE;VAR pSIRequested:SECURITY_INFORMATION;
  1984.                                      VAR pSID:SECURITY_DESCRIPTOR;nLength:ULONG;
  1985.                                      VAR lpnLengthNeeded:ULONG):BOOL;
  1986.                       APIENTRY; 'USER32' name 'GetUserObjectSecurity';}
  1987.       FUNCTION RegisterWindowMessage(CONST lpString:CSTRING):ULONG;
  1988.                       APIENTRY; 'USER32' name 'RegisterWindowMessageA';
  1989.       FUNCTION GetMessage(VAR lpMsg:MSG;ahwnd:HWND;wMsgFilterMin,wMsgFilterMax:ULONG):BOOL;
  1990.                       APIENTRY; 'USER32' name 'GetMessageA';
  1991.       FUNCTION TranslateMessage(VAR lpMsg:MSG):BOOL;
  1992.                       APIENTRY; 'USER32' name 'TranslateMessage';
  1993.       FUNCTION DispatchMessage(VAR lpMsg:MSG):LONG;
  1994.                       APIENTRY; 'USER32' name 'DispatchMessageA';
  1995.       FUNCTION SetMessageQueue(cMessagesMax:LONGINT):BOOL;
  1996.                       APIENTRY; 'USER32' name 'SetMessageQueue';
  1997.       FUNCTION PeekMessage(VAR lpMsg:MSG;ahWnd:HWND;wMsgFilterMin,wMsgFilterMax:ULONG;
  1998.                            wRemoveMsg:ULONG):BOOL;
  1999.                       APIENTRY; 'USER32' name 'PeekMessageA';
  2000.       FUNCTION RegisterHotKey(aHwnd:HWND;id:LONGINT;fsModifiers,vk:ULONG):BOOL;
  2001.                       APIENTRY; 'USER32' name 'RegisterHotKey';
  2002.       FUNCTION UnregisterHotKey(aHwnd:HWND;id:LONGINT):BOOL;
  2003.                       APIENTRY; 'USER32' name 'UnregisterHotKey';
  2004.       FUNCTION ExitWindowsEx(uFlags:ULONG;dwReserved:ULONG):BOOL;
  2005.                       APIENTRY; 'USER32' name 'ExitWindowsEx';
  2006.       FUNCTION SwapMouseButton(fSwap:BOOL):BOOL;
  2007.                       APIENTRY; 'USER32' name 'SwapMouseButton';
  2008.       FUNCTION GetMessagePos:ULONG;
  2009.                       APIENTRY; 'USER32' name 'GetMessagePos';
  2010.       FUNCTION GetMessageTime:LONG;
  2011.                       APIENTRY; 'USER32' name 'GetMessageTime';
  2012.       FUNCTION GetMessageExtraInfo:LONG;
  2013.                       APIENTRY; 'USER32' name 'GetMessageExtraInfo';
  2014.       FUNCTION SendMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2015.                       APIENTRY; 'USER32' name 'SendMessageA';
  2016.       FUNCTION SendMessageTimeout(ahwnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM;
  2017.                                   fuFlags:ULONG;uTimeout:ULONG;
  2018.                                   VAR lpdwResult:ULONG):LRESULT;
  2019.                       APIENTRY; 'USER32' name 'SendMessageTimeoutA';
  2020.       FUNCTION SendNotifyMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2021.                       APIENTRY; 'USER32' name 'SendNotifyMessageA';
  2022.       FUNCTION SendMessageCallback(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM;
  2023.                                    lpResultCallBack:SENDASYNCPROC;dwData:ULONG):BOOL;
  2024.                       APIENTRY; 'USER32' name 'SendMessageCallbackA';
  2025.       FUNCTION PostMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2026.                       APIENTRY; 'USER32' name 'PostMessageA';
  2027.       FUNCTION PostThreadMessage(idThread:ULONG;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2028.                       APIENTRY; 'USER32' name 'PostThreadMessageA';
  2029.       FUNCTION AttachThreadInput(idAttach,idAttachTo:ULONG;fAttach:BOOL):BOOL;
  2030.                       APIENTRY; 'USER32' name 'AttachThreadInput';
  2031.       FUNCTION ReplyMessage(alResult:LRESULT):BOOL;
  2032.                       APIENTRY; 'USER32' name 'ReplyMessage';
  2033.       FUNCTION WaitMessage:BOOL;
  2034.                       APIENTRY; 'USER32' name 'WaitMessage';
  2035.       FUNCTION WaitForInputIdle(hProcess:HANDLE;dwMilliseconds:ULONG):ULONG;
  2036.                       APIENTRY; 'USER32' name 'WaitForInputIdle';
  2037.       FUNCTION DefWindowProc(ahwnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2038.                       APIENTRY; 'USER32' name 'DefWindowProcA';
  2039.       PROCEDURE PostQuitMessage(nExitCode:LONGINT);
  2040.                       APIENTRY; 'USER32' name 'PostQuitMessage';
  2041.       FUNCTION CallWindowProc(lpPrevWndFunc:WNDPROC;ahwnd:HWND;Msg:ULONG;
  2042.                               awParam:WPARAM;alParam:LPARAM):LRESULT;
  2043.                       APIENTRY; 'USER32' name 'CallWindowProcA';
  2044.       FUNCTION InSendMessage:BOOL;
  2045.                       APIENTRY; 'USER32' name 'InSendMessage';
  2046.       FUNCTION GetDoubleClickTime:ULONG;
  2047.                       APIENTRY; 'USER32' name 'GetDoubleClickTime';
  2048.       FUNCTION SetDoubleClickTime(Value:ULONG):BOOL;
  2049.                       APIENTRY; 'USER32' name 'SetDoubleClickTime';
  2050.       FUNCTION RegisterClass(lpWndClass:WNDCLASS):ATOM;
  2051.                       APIENTRY; 'USER32' name 'RegisterClassA';
  2052.       FUNCTION UnregisterClass(CONST lpClassName:CSTRING;Instance:HINSTANCE):BOOL;
  2053.                       APIENTRY; 'USER32' name 'UnregisterClassA';
  2054.       FUNCTION GetClassInfo(ahInstance:HINSTANCE;CONST lpClassName:CSTRING;
  2055.                             VAR lpWndClass:WNDCLASS):BOOL;
  2056.                       APIENTRY; 'USER32' name 'GetClassInfoA';
  2057.       FUNCTION CreateWindowEx(dwExStyle:ULONG;CONST lpClassName,lpWindowName:CSTRING;
  2058.                               dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  2059.                               hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  2060.                               VAR lpParam):HWND;
  2061.                       APIENTRY; 'USER32' name 'CreateWindowExA';
  2062.       FUNCTION IsWindow(ahwnd:HWND):BOOL;
  2063.                       APIENTRY; 'USER32' name 'IsWindow';
  2064.       FUNCTION IsMenu(ahMenu:HMENU):BOOL;
  2065.                       APIENTRY; 'USER32' name 'IsMenu';
  2066.       FUNCTION IsChild(hWndParent,ahWnd:HWND):BOOL;
  2067.                       APIENTRY; 'USER32' name 'IsChild';
  2068.       FUNCTION DestroyWindow(ahwnd:HWND):BOOL;
  2069.                       APIENTRY; 'USER32' name 'DestroyWindow';
  2070.       FUNCTION ShowWindow(ahwnd:HWND;nCmdShow:LONGINT):BOOL;
  2071.                       APIENTRY; 'USER32' name 'ShowWindow';
  2072.       FUNCTION FlashWindow(ahwnd:HWND;bInvert:BOOL):BOOL;
  2073.                       APIENTRY; 'USER32' name 'FlashWindow';
  2074.       FUNCTION ShowOwnedPopups(ahwnd:HWND;fShow:BOOL):BOOL;
  2075.                       APIENTRY; 'USER32' name 'ShowOwnedPopups';
  2076.       FUNCTION OpenIcon(ahwnd:HWND):BOOL;
  2077.                       APIENTRY; 'USER32' name 'OpenIcon';
  2078.       FUNCTION CloseWindow(ahwnd:HWND):BOOL;
  2079.                       APIENTRY; 'USER32' name 'CloseWindow';
  2080.       FUNCTION MoveWindow(ahwnd:HWND;X,Y,nWidth,nHeight:LONGINT;bRepaint:BOOL):BOOL;
  2081.                       APIENTRY; 'USER32' name 'MoveWindow';
  2082.       FUNCTION SetWindowPos(ahwnd:HWND;hwndInsertAfter:HWND;X,Y,cx,cy:LONGINT;
  2083.                             uFlags:ULONG):BOOL;
  2084.                       APIENTRY; 'USER32' name 'SetWindowPos';
  2085.       FUNCTION GetWindowPlacement(ahwnd:HWND;VAR lpwndpl:WINDOWPLACEMENT):BOOL;
  2086.                       APIENTRY; 'USER32' name 'GetWindowPlacement';
  2087.       FUNCTION SetWindowPlacement(ahwnd:HWND;VAR lpwndpl:WINDOWPLACEMENT):BOOL;
  2088.                       APIENTRY; 'USER32' name 'SetWindowPlacement';
  2089.       FUNCTION BeginDeferWindowPos(nNumWindows:LONGINT):HDWP;
  2090.                       APIENTRY; 'USER32' name 'BeginDeferWindowPos';
  2091.       FUNCTION DeferWindowPos(hWinPosInfo:HDWP;ahwnd,hwndInsertAfter:HWND;
  2092.                               x,y,cx,cy:LONGINT;uFlags:ULONG):HDWP;
  2093.                       APIENTRY; 'USER32' name 'DeferWindowPos';
  2094.       FUNCTION EndDeferWindowPos(hWinPosInfo:HDWP):BOOL;
  2095.                       APIENTRY; 'USER32' name 'EndDeferWindowPos';
  2096.       FUNCTION IsWindowVisible(ahwnd:HWND):BOOL;
  2097.                       APIENTRY; 'USER32' name 'IsWindowVisible';
  2098.       FUNCTION IsIconic(ahwnd:HWND):BOOL;
  2099.                       APIENTRY; 'USER32' name 'IsIconic';
  2100.       FUNCTION AnyPopup:BOOL;
  2101.                       APIENTRY; 'USER32' name 'AnyPopup';
  2102.       FUNCTION BringWindowToTop(ahwnd:HWND):BOOL;
  2103.                       APIENTRY; 'USER32' name 'BringWindowToTop';
  2104.       FUNCTION IsZoomed(ahwnd:HWND):BOOL;
  2105.                       APIENTRY; 'USER32' name 'IsZoomed';
  2106.       FUNCTION CreateDialogParam(ahInstance:HINSTANCE;CONST lpTemplateName:CSTRING;
  2107.                                  hwndParent:HWND;lpDialogFunc:DLGPROC;
  2108.                                  dwInitParam:LPARAM):HWND;
  2109.                       APIENTRY; 'USER32' name 'CreateDialogParamA';
  2110.       FUNCTION CreateDialogIndirectParam(ahInstance:HINSTANCE;VAR lpTemplate:DLGTEMPLATE;
  2111.                                          hwndParent:HWND;lpDialogFunc:DLGPROC;
  2112.                                          dwInitParam:LPARAM):HWND;
  2113.                       APIENTRY; 'USER32' name 'CreateDialogIndirectParamA';
  2114.       FUNCTION DialogBoxParam(ahInstance:HINSTANCE;CONST lpTemplateName:CSTRING;
  2115.                               hwndParent:HWND;lpDialogFunc:DLGPROC;
  2116.                               dwInitParam:LPARAM):LONGINT;
  2117.                       APIENTRY; 'USER32' name 'DialogBoxParamA';
  2118.       FUNCTION DialogBoxIndirectParam(ahInstance:HINSTANCE;VAR hDialogTemplate:DLGTEMPLATE;
  2119.                                       hwndParent:HWND;lpDialogFunc:DLGPROC;
  2120.                                       dwInitParam:LPARAM):LONGINT;
  2121.                       APIENTRY; 'USER32' name 'DialogBoxIndirectParamA';
  2122.       FUNCTION EndDialog(hDlg:HWND;nResult:LONGINT):BOOL;
  2123.                       APIENTRY; 'USER32' name 'EndDialog';
  2124.       FUNCTION GetDlgItem(hDlg:HWND;nIDDlgItem:LONGINT):HWND;
  2125.                       APIENTRY; 'USER32' name 'GetDlgItem';
  2126.       FUNCTION SetDlgItemInt(hDlg:HWND;nIDDlgItem:LONGINT;uValue:ULONG;
  2127.                              bSigned:BOOL):BOOL;
  2128.                       APIENTRY; 'USER32' name 'SetDlgItemInt';
  2129.       FUNCTION GetDlgItemInt(hDlg:HWND;nIDDlgItem:LONGINT;VAR lpTranslated:BOOL;
  2130.                              bSigned:BOOL):ULONG;
  2131.                       APIENTRY; 'USER32' name 'GetDlgItemInt';
  2132.       FUNCTION SetDlgItemText(hDlg:HWND;nIDDlgItem:LONGINT;CONST lpString:CSTRING):BOOL;
  2133.                       APIENTRY; 'USER32' name 'SetDlgItemTextA';
  2134.       FUNCTION GetDlgItemText(hDlg:HWND;nIDDlgItem:LONGINT;VAR lpString:CSTRING;
  2135.                               nMaxCount:LONGINT):ULONG;
  2136.                       APIENTRY; 'USER32' name 'GetDlgItemTextA';
  2137.       FUNCTION CheckDlgButton(hDlg:HWND;nIDButton:LONGINT;uCheck:ULONG):BOOL;
  2138.                       APIENTRY; 'USER32' name 'CheckDlgButton';
  2139.       FUNCTION CheckRadioButton(hDlg:HWND;nIDFirstButton,nIDLastButton:LONGINT;
  2140.                                 nIDCheckButton:LONGINT):BOOL;
  2141.                       APIENTRY; 'USER32' name 'CheckRadioButton';
  2142.       FUNCTION IsDlgButtonChecked(hDlg:HWND;nIDButton:LONGINT):ULONG;
  2143.                       APIENTRY; 'USER32' name 'IsDlgButtonChecked';
  2144.       FUNCTION SendDlgItemMessage(hDlg:HWND;nIDDlgItem:LONGINT;Msg:ULONG;
  2145.                                   awParam:WPARAM;alparam:LPARAM):LONG;
  2146.                       APIENTRY; 'USER32' name 'SendDlgItemMessageA';
  2147.       FUNCTION GetNextDlgGroupItem(hDlg:HWND;hCtl:HWND;bPrevious:BOOL):HWND;
  2148.                       APIENTRY; 'USER32' name 'GetNextDlgGroupItem';
  2149.       FUNCTION GetNextDlgTabItem(hDlg:HWND;hCtl:HWND;bPrevious:BOOL):HWND;
  2150.                       APIENTRY; 'USER32' name 'GetNextDlgTabItem';
  2151.       FUNCTION GetDlgCtrlID(ahwnd:HWND):LONGINT;
  2152.                       APIENTRY; 'USER32' name 'GetDlgCtrlID';
  2153.       FUNCTION GetDialogBaseUnits:LONGINT;
  2154.                       APIENTRY; 'USER32' name 'GetDialogBaseUnits';
  2155.       FUNCTION DefDlgProc(hDlg:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2156.                       APIENTRY; 'USER32' name 'DefDlgProcA';
  2157.       FUNCTION CallMsgFilter(VAR lpMsg:MSG;nCode:LONGINT):BOOL;
  2158.                       APIENTRY; 'USER32' name 'CallMsgFilterA';
  2159.       FUNCTION OpenClipboard(hwndNewOwner:HWND):BOOL;
  2160.                       APIENTRY; 'USER32' name 'OpenClipboard';
  2161.       FUNCTION CloseClipboard:BOOL;
  2162.                       APIENTRY; 'USER32' name 'CloseClipboard';
  2163.       FUNCTION GetClipboardOwner:HWND;
  2164.                       APIENTRY; 'USER32' name 'GetClipboardOwner';
  2165.       FUNCTION SetClipboardViewer(hwndNewViewer:HWND):HWND;
  2166.                       APIENTRY; 'USER32' name 'SetClipboardViewer';
  2167.       FUNCTION GetClipboardViewer:HWND;
  2168.                       APIENTRY; 'USER32' name 'GetClipboardViewer';
  2169.       FUNCTION ChangeClipboardChain(hwndRemove,hwndNewNext:HWND):BOOL;
  2170.                       APIENTRY; 'USER32' name 'ChangeClipboardChain';
  2171.       FUNCTION SetClipboardData(uFormat:ULONG;hMem:HANDLE):HANDLE;
  2172.                       APIENTRY; 'USER32' name 'SetClipboardData';
  2173.       FUNCTION GetClipboardData(uFormat:ULONG):HANDLE;
  2174.                       APIENTRY; 'USER32' name 'GetClipboardData';
  2175.       FUNCTION RegisterClipboardFormat(CONST lpszFormat:CSTRING):ULONG;
  2176.                       APIENTRY; 'USER32' name 'RegisterClipboardFormatA';
  2177.       FUNCTION CountClipboardFormats:LONGINT;
  2178.                       APIENTRY; 'USER32' name 'CountClipboardFormats';
  2179.       FUNCTION EnumClipboardFormats(format:ULONG):ULONG;
  2180.                       APIENTRY; 'USER32' name 'EnumClipboardFormats';
  2181.       FUNCTION GetClipboardFormatName(format:ULONG;VAR lpszFormatName:CSTRING;
  2182.                                       cchMaxCount:LONGINT):LONGINT;
  2183.                       APIENTRY; 'USER32' name 'GetClipboardFormatNameA';
  2184.       FUNCTION LoadCursorFromFile(c:CString):LongInt;
  2185.                       APIENTRY; 'USER32' name 'LoadCursorFromFileA';
  2186.       FUNCTION LoadImage(Instance:LongInt;Name:CString;utype,X,Y,Flags:LongInt):LongInt;
  2187.                       APIENTRY; 'USER32' name 'LoadImageA';
  2188.       FUNCTION EmptyClipboard:BOOL;
  2189.                       APIENTRY; 'USER32' name 'EmptyClipboard';
  2190.       FUNCTION IsClipboardFormatAvailable(format:ULONG):BOOL;
  2191.                       APIENTRY; 'USER32' name 'IsClipboardFormatAvailable';
  2192.       FUNCTION GetPriorityClipboardFormat(VAR paFormatPriorityList:ULONG;
  2193.                                           cFormats:LONGINT):LONGINT;
  2194.                       APIENTRY; 'USER32' name 'GetPriorityClipboardFormat';
  2195.       FUNCTION GetOpenClipboardWindow:HWND;
  2196.                       APIENTRY; 'USER32' name 'GetOpenClipboardWindow';
  2197.       FUNCTION CharToOem(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING):BOOL;
  2198.                       APIENTRY; 'USER32' name 'CharToOemA';
  2199.       FUNCTION AnsiToOem(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING):BOOL;
  2200.                       APIENTRY; 'USER32' name 'CharToOemA';
  2201.       FUNCTION OemToChar(CONST lpszSrc:CSTRING;VAR lpstDst:CSTRING):BOOL;
  2202.                       APIENTRY; 'USER32' name 'OemToCharA';
  2203.       FUNCTION OemToAnsi(CONST lpszSrc:CSTRING;VAR lpstDst:CSTRING):BOOL;
  2204.                       APIENTRY; 'USER32' name 'OemToCharA';
  2205.       FUNCTION CharToOemBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2206.                              cchDstLength:ULONG):BOOL;
  2207.                       APIENTRY; 'USER32' name 'CharToOemBuffA';
  2208.       FUNCTION AnsiToOemBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2209.                              cchDstLength:ULONG):BOOL;
  2210.                       APIENTRY; 'USER32' name 'CharToOemBuffA';
  2211.       FUNCTION OemToCharBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2212.                              cchDstLength:ULONG):BOOL;
  2213.                       APIENTRY; 'USER32' name 'OemToCharBuffA';
  2214.       FUNCTION OemToAnsiBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2215.                              cchDstLength:ULONG):BOOL;
  2216.                       APIENTRY; 'USER32' name 'OemToCharBuffA';
  2217.       FUNCTION CharUpper(VAR lpsz:CSTRING):PChar;
  2218.                       APIENTRY; 'USER32' name 'CharUpperA';
  2219.       FUNCTION AnsiUpper(VAR lpsz:CSTRING):PChar;
  2220.                       APIENTRY; 'USER32' name 'CharUpperA';
  2221.       FUNCTION CharUpperBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2222.                       APIENTRY; 'USER32' name 'CharUpperBuffA';
  2223.       FUNCTION AnsiUpperBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2224.                       APIENTRY; 'USER32' name 'CharUpperBuffA';
  2225.       FUNCTION CharLower(VAR lpsz:CSTRING):PChar;
  2226.                       APIENTRY; 'USER32' name 'CharLowerA';
  2227.       FUNCTION AnsiLower(VAR lpsz:CSTRING):PChar;
  2228.                       APIENTRY; 'USER32' name 'CharLowerA';
  2229.       FUNCTION CharLowerBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2230.                       APIENTRY; 'USER32' name 'CharLowerBuffA';
  2231.       FUNCTION AnsiLowerBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2232.                       APIENTRY; 'USER32' name 'CharLowerBuffA';
  2233.       FUNCTION CharNext(CONST lpsz:CSTRING):PChar;
  2234.                       APIENTRY; 'USER32' name 'CharNextA';
  2235.       FUNCTION AnsiNext(CONST lpsz:CSTRING):PChar;
  2236.                       APIENTRY; 'USER32' name 'CharNextA';
  2237.       FUNCTION CharPrev(CONST lpszStart,lpszCurrent:CSTRING):PChar;
  2238.                       APIENTRY; 'USER32' name 'CharPrevA';
  2239.       FUNCTION AnsiPrev(CONST lpszStart,lpszCurrent:CSTRING):PChar;
  2240.                       APIENTRY; 'USER32' name 'CharPrevA';
  2241.       FUNCTION IsCharAlpha(ch:CHAR):BOOL;
  2242.                       APIENTRY; 'USER32' name 'IsCharAlphaA';
  2243.       FUNCTION IsCharAlphaNumeric(ch:CHAR):BOOL;
  2244.                       APIENTRY; 'USER32' name 'IsCharAlphaNumericA';
  2245.       FUNCTION IsCharUpper(ch:CHAR):BOOL;
  2246.                       APIENTRY; 'USER32' name 'IsCharUpperA';
  2247.       FUNCTION IsCharLower(ch:CHAR):BOOL;
  2248.                       APIENTRY; 'USER32' name 'IsCharLowerA';
  2249.       FUNCTION SetFocus(ahwnd:HWND):HWND;
  2250.                       APIENTRY; 'USER32' name 'SetFocus';
  2251.       FUNCTION GetActiveWindow:HWND;
  2252.                       APIENTRY; 'USER32' name 'GetActiveWindow';
  2253.       FUNCTION GetFocus:HWND;
  2254.                       APIENTRY; 'USER32' name 'GetFocus';
  2255.       FUNCTION GetKBCodePage:ULONG;
  2256.                       APIENTRY; 'USER32' name 'GetKBCodePage';
  2257.       FUNCTION GetKeyState(nVirtKey:LONGINT):SHORT;
  2258.                       APIENTRY; 'USER32' name 'GetKeyState';
  2259.       FUNCTION GetAsyncKeyState(vKey:LONGINT):SHORT;
  2260.                       APIENTRY; 'USER32' name 'GetAsyncKeyState';
  2261.       FUNCTION GetKeyboardState(VAR lpKeyState:BYTE):BOOL;
  2262.                       APIENTRY; 'USER32' name 'GetKeyboardState';
  2263.       FUNCTION SetKeyboardState(VAR lpKeyState:BYTE):BOOL;
  2264.                       APIENTRY; 'USER32' name 'SetKeyboardState';
  2265.       FUNCTION GetKeyNameText(lParam:LONG;VAR lpString:CSTRING;nSize:LONGINT):LONGINT;
  2266.                       APIENTRY; 'USER32' name 'GetKeyNameTextA';
  2267.       FUNCTION GetKeyboardType(nTypeFlag:LONGINT):LONGINT;
  2268.                       APIENTRY; 'USER32' name 'GetKeyboardType';
  2269.       FUNCTION ToAscii(uVirtKey,uScanCode:ULONG;VAR lpKeyState:BYTE;VAR lpChar:WORD;
  2270.                        uFlags:ULONG):LONGINT;
  2271.                       APIENTRY; 'USER32' name 'ToAscii';
  2272.       FUNCTION OemKeyScan(wOemChar:WORD):ULONG;
  2273.                       APIENTRY; 'USER32' name 'OemKeyScan';
  2274.       FUNCTION VkKeyScan(ch:CHAR):SHORT;
  2275.                       APIENTRY; 'USER32' name 'VkKeyScanA';
  2276.       PROCEDURE keybd_event(bVK:BYTE;bScan:BYTE;dwFlags,dwExtraInfo:ULONG);
  2277.                       APIENTRY; 'USER32' name 'keybd_event';
  2278.       PROCEDURE mouse_event(dwFlags,dx,dy,cButtons,dwExtraInfo:ULONG);
  2279.                       APIENTRY; 'USER32' name 'mouse_event';
  2280.       FUNCTION MapVirtualKey(uCode,uMapType:ULONG):ULONG;
  2281.                       APIENTRY; 'USER32' name 'MapVirtualKeyA';
  2282.       FUNCTION GetInputState:BOOL;
  2283.                       APIENTRY; 'USER32' name 'GetInputState';
  2284.       FUNCTION GetQueueStatus(flags:ULONG):ULONG;
  2285.                       APIENTRY; 'USER32' name 'GetQueueStatus';
  2286.       FUNCTION GetCapture:HWND;
  2287.                       APIENTRY; 'USER32' name 'GetCapture';
  2288.       FUNCTION SetCapture(ahwnd:HWND):HWND;
  2289.                       APIENTRY; 'USER32' name 'SetCapture';
  2290.       FUNCTION ReleaseCapture:BOOL;
  2291.                       APIENTRY; 'USER32' name 'ReleaseCapture';
  2292.       FUNCTION MsgWaitForMultipleObjects(nCount:ULONG;VAR pHandles:HANDLE;
  2293.                                   fWaitAll:BOOL;dwMilliseconds,dwWakeMask:ULONG):ULONG;
  2294.                       APIENTRY; 'USER32' name 'MsgWaitForMultipleObjects';
  2295.       FUNCTION SetTimer(ahwnd:HWND;nIDEvent,uElapse:ULONG;lpTimerFunc:TIMERPROC):ULONG;
  2296.                       APIENTRY; 'USER32' name 'SetTimer';
  2297.       FUNCTION KillTimer(ahwnd:HWND;uIDEvent:ULONG):BOOL;
  2298.                       APIENTRY; 'USER32' name 'KillTimer';
  2299.       FUNCTION IsWindowUnicode(ahwnd:HWND):BOOL;
  2300.                       APIENTRY; 'USER32' name 'IsWindowUnicode';
  2301.       FUNCTION EnableWindow(ahwnd:HWND;bEnable:BOOL):BOOL;
  2302.                       APIENTRY; 'USER32' name 'EnableWindow';
  2303.       FUNCTION IsWindowEnabled(ahwnd:HWND):BOOL;
  2304.                       APIENTRY; 'USER32' name 'IsWindowEnabled';
  2305.       FUNCTION LoadAccelerators(ahInstance:HINSTANCE;CONST lpTableName:CSTRING):HACCEL;
  2306.                       APIENTRY; 'USER32' name 'LoadAcceleratorsA';
  2307.       FUNCTION CreateAcceleratorTable(VAR acc:ACCEL;para:LONGINT):HACCEL;
  2308.                       APIENTRY; 'USER32' name 'CreateAcceleratorTableA';
  2309.       FUNCTION DestroyAcceleratorTable(ahAccel:HACCEL):BOOL;
  2310.                       APIENTRY; 'USER32' name 'DestroyAcceleratorTable';
  2311.       FUNCTION CopyAcceleratorTable(hAccelSrc:HACCEL;VAR lpAccelDst:ACCEL;
  2312.                                     cAccelEntries:LONGINT):LONGINT;
  2313.                       APIENTRY; 'USER32' name 'CopyAcceleratorTableA';
  2314.       FUNCTION TranslateAccelerator(ahwnd:HWND;hAccTable:HACCEL;VAR lpMsg:MSG):LONGINT;
  2315.                       APIENTRY; 'USER32' name 'TranslateAcceleratorA';
  2316.       FUNCTION GetSystemMetrics(nIndex:LONGINT):LONGINT;
  2317.                       APIENTRY; 'USER32' name 'GetSystemMetrics';
  2318.       FUNCTION LoadMenu(hInsance:HINSTANCE;CONST lpMenuName:CSTRING):HMENU;
  2319.                       APIENTRY; 'USER32' name 'LoadMenuA';
  2320.       FUNCTION LoadMenuIndirect(VAR lpMenuTemplate:MENUTEMPLATE):HMENU;
  2321.                       APIENTRY; 'USER32' name 'LoadMenuIndirectA';
  2322.       FUNCTION GetMenu(ahnd:HWND):HMENU;
  2323.                       APIENTRY; 'USER32' name 'GetMenu';
  2324.       FUNCTION SetMenu(ahwnd:HWND;ahMenu:HMENU):BOOL;
  2325.                       APIENTRY; 'USER32' name 'SetMenu';
  2326.       FUNCTION ChangeMenu(ahMenu:HMENU;cmd:ULONG;CONST lpszNewItem:CSTRING;
  2327.                           cmdInsert,flags:ULONG):BOOL;
  2328.                       APIENTRY; 'USER32' name 'ChangeMenuA';
  2329.       FUNCTION HiliteMenuItem(ahwnd:HWND;ahMenu:HMENU;uIDHiliteItem,uHilite:ULONG):BOOL;
  2330.                       APIENTRY; 'USER32' name 'HiliteMenuItem';
  2331.       FUNCTION GetMenuString(ahMenu:HMENU;uIDItem:ULONG;VAR lpString:CSTRING;
  2332.                              nMaxCount:LONGINT;uFlag:ULONG):LONGINT;
  2333.                       APIENTRY; 'USER32' name 'GetMenuStringA';
  2334.       FUNCTION GetMenuState(ahMenu:HMENU;uId,uFlags:ULONG):ULONG;
  2335.                       APIENTRY; 'USER32' name 'GetMenuState';
  2336.       FUNCTION DrawMenuBar(ahwnd:HWND):BOOL;
  2337.                       APIENTRY; 'USER32' name 'DrawMenuBar';
  2338.       FUNCTION GetSystemMenu(ahwnd:HWND;bRevert:BOOL):HMENU;
  2339.                       APIENTRY; 'USER32' name 'GetSystemMenu';
  2340.       FUNCTION CreateMenu:HMENU;
  2341.                       APIENTRY; 'USER32' name 'CreateMenu';
  2342.       FUNCTION CreatePopupMenu:HMENU;
  2343.                       APIENTRY; 'USER32' name 'CreatePopupMenu';
  2344.       FUNCTION DestroyMenu(ahMenu:HMENU):BOOL;
  2345.                       APIENTRY; 'USER32' name 'DestroyMenu';
  2346.       FUNCTION CheckMenuItem(ahMenu:HMENU;uidCheckItem,uCheck:ULONG):ULONG;
  2347.                       APIENTRY; 'USER32' name 'CheckMenuItem';
  2348.       FUNCTION EnableMenuItem(ahMenu:HMENU;uIDEnableItem,uEnable:ULONG):BOOL;
  2349.                       APIENTRY; 'USER32' name 'EnableMenuItem';
  2350.       FUNCTION GetSubMenu(ahMenu:HMENU;nPos:LONGINT):HMENU;
  2351.                       APIENTRY; 'USER32' name 'GetSubMenu';
  2352.       FUNCTION GetMenuItemID(ahMenu:HMENU;nPos:LONGINT):ULONG;
  2353.                       APIENTRY; 'USER32' name 'GetMenuItemID';
  2354.       FUNCTION GetMenuItemCount(ahMenu:HMENU):LONGINT;
  2355.                       APIENTRY; 'USER32' name 'GetMenuItemCount';
  2356.       FUNCTION GetMenuItemRect(ahwnd:HWND;ahMenu:HMENU;uItem:ULONG;
  2357.                                VAR lprc:RECT):BOOL;
  2358.                       APIENTRY; 'USER32' name 'GetMenuItemRect';
  2359.       FUNCTION InsertMenu(ahMenu:HMENU;uPosition,uFlags,uIdNewItem:ULONG;
  2360.                           CONST lpNewItem:CSTRING):BOOL;
  2361.                       APIENTRY; 'USER32' name 'InsertMenuA';
  2362.       FUNCTION AppendMenu(ahMenu:HMENU;uFlags,uIdNewItem:ULONG;
  2363.                           CONST lpNewItem:CSTRING):BOOL;
  2364.                       APIENTRY; 'USER32' name 'AppendMenuA';
  2365.       FUNCTION ModifyMenu(ahMenu:HMENU;uPosition,uFlags,uIdNewItem:ULONG;
  2366.                           CONST lpNewItem:CSTRING):BOOL;
  2367.                       APIENTRY; 'USER32' name 'ModifyMenuA';
  2368.       FUNCTION RemoveMenu(ahMenu:HMENU;uPosition,uFlags:ULONG):BOOL;
  2369.                       APIENTRY; 'USER32' name 'RemoveMenu';
  2370.       FUNCTION DeleteMenu(ahMenu:HMENU;uPosition,uFlags:ULONG):BOOL;
  2371.                       APIENTRY; 'USER32' name 'DeleteMenu';
  2372.       FUNCTION SetMenuItemBitmaps(ahMenu:HMENU;uPositio,uFlags:ULONG;
  2373.                                   hBitmapUnchecked,hBitmapChecked:HBITMAP):BOOL;
  2374.                       APIENTRY; 'USER32' name 'SetMenuItemBitmaps';
  2375.       FUNCTION GetMenuCheckMarkDimensions:LONG;
  2376.                       APIENTRY; 'USER32' name 'GetMenuCheckMarkDimensions';
  2377.       FUNCTION TrackPopupMenu(ahMenu:HMENU;uFlags:ULONG;x,y,reserved:LONGINT;
  2378.                               ahwnd:HWND;VAR prcRect:RECT):BOOL;
  2379.                       APIENTRY; 'USER32' name 'TrackPopupMenu';
  2380.       FUNCTION DrawIcon(ahDC:HDC;x,y:LONGINT;ahIcon:HICON):BOOL;
  2381.                       APIENTRY; 'USER32' name 'DrawIcon';
  2382.       FUNCTION DrawText(ahDC:HDC;CONST lpString:CSTRING;nCount:LONGINT;
  2383.                         VAR lpRect:RECT;uFormat:ULONG):LONGINT;
  2384.                       APIENTRY; 'USER32' name 'DrawTextA';
  2385.       FUNCTION GrayString(ahDC:HDC;ahBrush:HBRUSH;lpOutFunc:GRAYSTRINGPROC;
  2386.                           lpData:LPARAM;nCount,x,y,nWidth,nHeight:LONGINT):BOOL;
  2387.                       APIENTRY; 'USER32' name 'GrayStringA';
  2388.       FUNCTION TabbedTextOut(ahDC:HDC;x,y:LONGINT;CONST lpString:CSTRING;
  2389.                              nCount,nTabPositions:LONGINT;VAR lpnTabStopPositions:LONGINT;
  2390.                              nTabOrigin:LONGINT):LONG;
  2391.                       APIENTRY; 'USER32' name 'TabbedTextOutA';
  2392.       FUNCTION GetTabbedTextExtent(ahDC:HDC;CONST lpString:CSTRING;nCount,nTabPositions:LONGINT;
  2393.                                    VAR lpnTabStopPositions:LONGINT):ULONG;
  2394.                       APIENTRY; 'USER32' name 'GetTabbedTextExtentA';
  2395.       FUNCTION UpdateWindow(ahwnd:HWND):BOOL;
  2396.                       APIENTRY; 'USER32' name 'UpdateWindow';
  2397.       FUNCTION SetActiveWindow(ahwnd:HWND):HWND;
  2398.                       APIENTRY; 'USER32' name 'SetActiveWindow';
  2399.       FUNCTION GetForegroundWindow:HWND;
  2400.                       APIENTRY; 'USER32' name 'GetForegroundWindow';
  2401.       FUNCTION SetForegroundWindow(ahwnd:HWND):BOOL;
  2402.                       APIENTRY; 'USER32' name 'SetForegroundWindow';
  2403.       FUNCTION WindowFromDC(ahDC:HDC):HWND;
  2404.                       APIENTRY; 'USER32' name 'WindowFromDC';
  2405.       FUNCTION GetDC(ahwnd:HWND):HDC;
  2406.                       APIENTRY; 'USER32' name 'GetDC';
  2407.       FUNCTION GetDCEx(ahwnd:HWND;hrgnClip:HRGN;flags:ULONG):HDC;
  2408.                       APIENTRY; 'USER32' name 'GetDCEx';
  2409.       FUNCTION GetWindowDC(ahwnd:HWND):HDC;
  2410.                       APIENTRY; 'USER32' name 'GetWindowDC';
  2411.       FUNCTION ReleaseDC(ahwnd:HWND;ahDC:HDC):LONGINT;
  2412.                       APIENTRY; 'USER32' name 'ReleaseDC';
  2413.       FUNCTION BeginPaint(ahwnd:HWND;VAR lpPaint:PAINTSTRUCT):HDC;
  2414.                       APIENTRY; 'USER32' name 'BeginPaint';
  2415.       FUNCTION EndPaint(ahwnd:HWND;VAR lpPaint:PAINTSTRUCT):BOOL;
  2416.                       APIENTRY; 'USER32' name 'EndPaint';
  2417.       FUNCTION GetUpdateRect(ahwnd:HWND;VAR lpRect:RECT;bErase:BOOL):BOOL;
  2418.                       APIENTRY; 'USER32' name 'GetUpdateRect';
  2419.       FUNCTION GetUpdateRgn(ahwnd:HWND;ahRgn:HRGN;bErase:BOOL):LONGINT;
  2420.                       APIENTRY; 'USER32' name 'GetUpdateRgn';
  2421.       FUNCTION ExcludeUpdateRgn(ahDC:HDC;ahWnd:HWND):LONGINT;
  2422.                       APIENTRY; 'USER32' name 'ExcludeUpdateRgn';
  2423.       FUNCTION InvalidateRect(ahwnd:HWND;VAR lpRect:RECT;bErase:BOOL):BOOL;
  2424.                       APIENTRY; 'USER32' name 'InvalidateRect';
  2425.       FUNCTION ValidateRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  2426.                       APIENTRY; 'USER32' name 'ValidateRect';
  2427.       FUNCTION InvalidateRgn(ahwnd:HWND;ahRgn:HRGN;bErase:BOOL):BOOL;
  2428.                       APIENTRY; 'USER32' name 'InvalidateRgn';
  2429.       FUNCTION ValidateRgn(ahwnd:HWND;ahRgn:HRGN):BOOL;
  2430.                       APIENTRY; 'USER32' name 'ValidateRgn';
  2431.       FUNCTION RedrawWindow(ahwnd:HWND;VAR lprcUpdate:RECT;hrgnUpdate:HRGN;
  2432.                             flags:ULONG):BOOL;
  2433.                       APIENTRY; 'USER32' name 'RedrawWindow';
  2434.       FUNCTION LockWindowUpdate(hwndLock:HWND):BOOL;
  2435.                       APIENTRY; 'USER32' name 'LockWindowUpdate';
  2436.       FUNCTION ScrollWindow(ahwnd:HWND;XAmount,YAmount:LONGINT;
  2437.                             VAR lpRect,lpClipRect:RECT):BOOL;
  2438.                       APIENTRY; 'USER32' name 'ScrollWindow';
  2439.       FUNCTION ScrollDC(ahDC:HDC;dx,dy:LONGINT;VAR lprcScroll,lprcClip:RECT;
  2440.                         hrgnUpdate:HRGN;VAR lprcUpdate:RECT):BOOL;
  2441.                       APIENTRY; 'USER32' name 'ScrollDC';
  2442.       FUNCTION ScrollWindowEx(ahwnd:HWND;dx,dy:LONGINT;VAR prcScroll,prcClip:RECT;
  2443.                               hrgnUpdate:HRGN;VAR prcUpdate:RECT;Flags:ULONG):LONGINT;
  2444.                       APIENTRY; 'USER32' name 'ScrollWindowEx';
  2445.       FUNCTION SetScrollPos(ahwnd:HWND;nBar,nPos:LONGINT;bRedraw:BOOL):LONGINT;
  2446.                       APIENTRY; 'USER32' name 'SetScrollPos';
  2447.       FUNCTION GetScrollPos(ahwnd:HWND;nBar:LONGINT):LONGINT;
  2448.                       APIENTRY; 'USER32' name 'GetScrollPos';
  2449.       FUNCTION SetScrollRange(ahwnd:HWND;nBar,nMinPos,nMaxPos:LONGINT;bRedraw:BOOL):BOOL;
  2450.                       APIENTRY; 'USER32' name 'SetScrollRange';
  2451.       FUNCTION GetScrollRange(ahwnd:HWND;nBar:LONGINT;VAR lpMinPos,lpMaxPos:LONGINT):BOOL;
  2452.                       APIENTRY; 'USER32' name 'GetScrollRange';
  2453.       FUNCTION SetScrollInfo(ahwnd:HWND;nBar:LONGINT;CONST ScrollInfo:TScrollInfo;bRedraw:BOOL):LONGINT;
  2454.                       APIENTRY; 'USER32' name 'SetScrollInfo';
  2455.       FUNCTION GetScrollInfo(ahwnd:HWND;nBar:LONGINT;VAR ScrollInfo:TScrollInfo):BOOL;
  2456.                       APIENTRY; 'USER32' name 'GetScrollInfo';
  2457.       FUNCTION ShowScrollBar(ahwnd:HWND;wBar:LONGINT;bShow:BOOL):BOOL;
  2458.                       APIENTRY; 'USER32' name 'ShowScrollBar';
  2459.       FUNCTION EnableScrollBar(ahwnd:HWND;wSBflags,wArrows:ULONG):BOOL;
  2460.                       APIENTRY; 'USER32' name 'EnableScrollBar';
  2461.       FUNCTION SetProp(ahwnd:HWND;CONST lpString:CSTRING;hData:HANDLE):BOOL;
  2462.                       APIENTRY; 'USER32' name 'SetPropA';
  2463.       FUNCTION GetProp(ahwnd:HWND;CONST lpString:CSTRING):HANDLE;
  2464.                       APIENTRY; 'USER32' name 'GetPropA';
  2465.       FUNCTION RemoveProp(ahwnd:HWND;CONST lpString:CSTRING):HANDLE;
  2466.                       APIENTRY; 'USER32' name 'RemovePropA';
  2467.       FUNCTION EnumPropsEx(ahwnd:HWND;lpEnumFunc:PROPENUMPROCEX;alParam:LPARAM):LONGINT;
  2468.                       APIENTRY; 'USER32' name 'EnumPropsExA';
  2469.       FUNCTION EnumProps(ahwnd:HWND;lpEnumFunc:PROPENUMPROC):LONGINT;
  2470.                       APIENTRY; 'USER32' name 'EnumPropsA';
  2471.       FUNCTION SetWindowText(ahwnd:HWND;CONST lpString:CSTRING):BOOL;
  2472.                       APIENTRY; 'USER32' name 'SetWindowTextA';
  2473.       FUNCTION GetWindowText(ahwnd:HWND;VAR lpString:CSTRING;nMaxCount:LONGINT):LONGINT;
  2474.                       APIENTRY; 'USER32' name 'GetWindowTextA';
  2475.       FUNCTION GetWindowTextLength(ahwnd:HWND):LONGINT;
  2476.                       APIENTRY; 'USER32' name 'GetWindowTextLengthA';
  2477.       FUNCTION GetClientRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  2478.                       APIENTRY; 'USER32' name 'GetClientRect';
  2479.       FUNCTION GetWindowRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  2480.                       APIENTRY; 'USER32' name 'GetWindowRect';
  2481.       FUNCTION AdjustWindowRect(VAR lpRect:RECT;dwStyle:ULONG;bMenu:BOOL):BOOL;
  2482.                       APIENTRY; 'USER32' name 'AdjustWindowRect';
  2483.       FUNCTION AdjustWindowRectEx(VAR lpRect:RECT;dwStyle:ULONG;bMenu:BOOL;
  2484.                                   dwExStyle:ULONG):BOOL;
  2485.                       APIENTRY; 'USER32' name 'AdjustWindowRectEx';
  2486.       FUNCTION MessageBox(ahwnd:HWND;CONST lpText,lpCaption:CSTRING;uType:ULONG):LONGINT;
  2487.                       APIENTRY; 'USER32' name 'MessageBoxA';
  2488.       FUNCTION MessageBoxEx(ahwnd:HWND;CONST lpText,lpCaption:CSTRING;uType:ULONG;
  2489.                             wLanguageId:WORD):LONGINT;
  2490.                       APIENTRY; 'USER32' name 'MessageBoxExA';
  2491.       FUNCTION MessageBeep(uType:ULONG):BOOL;
  2492.                       APIENTRY; 'USER32' name 'MessageBeep';
  2493.       FUNCTION ShowCursor(bShow:BOOL):LONGINT;
  2494.                       APIENTRY; 'USER32' name 'ShowCursor';
  2495.       FUNCTION SetCursorPos(X,Y:LONGINT):BOOL;
  2496.                       APIENTRY; 'USER32' name 'SetCursorPos';
  2497.       FUNCTION SetCursor(ahCursor:HCURSOR):HCURSOR;
  2498.                       APIENTRY; 'USER32' name 'SetCursor';
  2499.       FUNCTION GetCursorPos(VAR lpPoint:POINT):BOOL;
  2500.                       APIENTRY; 'USER32' name 'GetCursorPos';
  2501.       FUNCTION ClipCursor(VAR lpRect:RECT):BOOL;
  2502.                       APIENTRY; 'USER32' name 'ClipCursor';
  2503.       FUNCTION GetClipCursor(VAR lpRect:RECT):BOOL;
  2504.                       APIENTRY; 'USER32' name 'GetClipCursor';
  2505.       FUNCTION GetCursor:HCURSOR;
  2506.                       APIENTRY; 'USER32' name 'GetCursor';
  2507.       FUNCTION CreateCaret(ahwnd:HWND;ahBitmap:HBITMAP;nWidth,nHeight:LONGINT):BOOL;
  2508.                       APIENTRY; 'USER32' name 'CreateCaret';
  2509.       FUNCTION GetCaretBlinkTime:ULONG;
  2510.                       APIENTRY; 'USER32' name 'GetCaretBlinkTime';
  2511.       FUNCTION SetCaretBlinkTime(uMSeconds:ULONG):BOOL;
  2512.                       APIENTRY; 'USER32' name 'SetCaretBlinkTime';
  2513.       FUNCTION DestroyCaret:BOOL;
  2514.                       APIENTRY; 'USER32' name 'DestroyCaret';
  2515.       FUNCTION HideCaret(ahwnd:HWND):BOOL;
  2516.                       APIENTRY; 'USER32' name 'HideCaret';
  2517.       FUNCTION ShowCaret(ahwnd:HWND):BOOL;
  2518.                       APIENTRY; 'USER32' name 'ShowCaret';
  2519.       FUNCTION SetCaretPos(X,Y:LONGINT):BOOL;
  2520.                       APIENTRY; 'USER32' name 'SetCaretPos';
  2521.       FUNCTION GetCaretPos(VAR lpPoint:POINT):BOOL;
  2522.                       APIENTRY; 'USER32' name 'GetCaretPos';
  2523.       FUNCTION ClientToScreen(ahwnd:HWND;VAR lpPoint:POINT):BOOL;
  2524.                       APIENTRY; 'USER32' name 'ClientToScreen';
  2525.       FUNCTION ScreenToClient(ahwnd:HWND;VAR lpPoint:POINT):BOOL;
  2526.                       APIENTRY; 'USER32' name 'ScreenToClient';
  2527.       FUNCTION MapWindowPoints(hwndFrom,hwndTo:HWND;VAR lpPoints:POINT;cPoints:ULONG):LONGINT;
  2528.                       APIENTRY; 'USER32' name 'MapWindowPoints';
  2529.       FUNCTION GetSysColor(nIndex:LONGINT):ULONG;
  2530.                       APIENTRY; 'USER32' name 'GetSysColor';
  2531.       FUNCTION SetSysColors(cElements:LONGINT;VAR lpaElements:LONGINT;
  2532.                             VAR lpaRgbValues:COLORREF):BOOL;
  2533.                       APIENTRY; 'USER32' name 'SetSysColors';
  2534.       FUNCTION DrawFocusRect(ahDC:HDC;CONST lprc:RECT):BOOL;
  2535.                       APIENTRY; 'USER32' name 'DrawFocusRect';
  2536.       FUNCTION FillRect(ahDC:HDC;CONST lprc:RECT;hbr:HBRUSH):LONGINT;
  2537.                       APIENTRY; 'USER32' name 'FillRect';
  2538.       FUNCTION FrameRect(ahDC:HDC;CONST lprc:RECT;hbr:HBRUSH):LONGINT;
  2539.                       APIENTRY; 'USER32' name 'FrameRect';
  2540.       FUNCTION InvertRect(ahDC:HDC;VAR lprc:RECT):BOOL;
  2541.                       APIENTRY; 'USER32' name 'InvertRect';
  2542.       FUNCTION SetRect(VAR lprc:RECT;xLeft,yTop,xRight,yBottom:LONGINT):BOOL;
  2543.                       APIENTRY; 'USER32' name 'SetRect';
  2544.       FUNCTION SetRectEmpty(VAR lprc:RECT):BOOL;
  2545.                       APIENTRY; 'USER32' name 'SetRectEmpty';
  2546.       FUNCTION CopyRect(VAR lprcDst,lprcSrc:RECT):BOOL;
  2547.                       APIENTRY; 'USER32' name 'CopyRect';
  2548.       FUNCTION InflateRect(VAR lprc:RECT;dx,dy:LONGINT):BOOL;
  2549.                       APIENTRY; 'USER32' name 'InflateRect';
  2550.       FUNCTION IntersectRect(VAR lprcDst:RECT;CONST lprcSrc1,lprcSrc2:RECT):BOOL;
  2551.                       APIENTRY; 'USER32' name 'IntersectRect';
  2552.       FUNCTION UnionRect(VAR lprcDst,lprcSrc1,lprcSrc2:RECT):BOOL;
  2553.                       APIENTRY; 'USER32' name 'UnionRect';
  2554.       FUNCTION SubtractRect(VAR lprcDst,lprcSrc1,lprcSrc2:RECT):BOOL;
  2555.                       APIENTRY; 'USER32' name 'SubtractRect';
  2556.       FUNCTION OffsetRect(VAR lprc:RECT;dx,dy:LONGINT):BOOL;
  2557.                       APIENTRY; 'USER32' name 'OffsetRect';
  2558.       FUNCTION IsRectEmpty(VAR lprc:RECT):BOOL;
  2559.                       APIENTRY; 'USER32' name 'IsRectEmpty';
  2560.       FUNCTION EqualRect(VAR lprc1,lprc2:RECT):BOOL;
  2561.                       APIENTRY; 'USER32' name 'EqualRect';
  2562.       FUNCTION PtInRect(CONST lprc:RECT;CONST pt:POINT):BOOL;
  2563.                       APIENTRY; 'USER32' name 'PtInRect';
  2564.       FUNCTION GetWindowWord(ahwnd:HWND;nIndex:LONGINT):WORD;
  2565.                       APIENTRY; 'USER32' name 'GetWindowWord';
  2566.       FUNCTION SetWindowWord(ahwnd:HWND;nIndex:LONGINT;nNewWord:WORD):WORD;
  2567.                       APIENTRY; 'USER32' name 'SetWindowWord';
  2568.       FUNCTION GetWindowLong(ahwnd:HWND;nIndex:LONGINT):LONG;
  2569.                       APIENTRY; 'USER32' name 'GetWindowLongA';
  2570.       FUNCTION SetWindowLong(ahwnd:HWND;nIndex:LONGINT;dwNewLong:LONG):LONG;
  2571.                       APIENTRY; 'USER32' name 'SetWindowLongA';
  2572.       FUNCTION GetClassWord(ahwnd:HWND;nIndex:LONGINT):WORD;
  2573.                       APIENTRY; 'USER32' name 'GetClassWord';
  2574.       FUNCTION SetClassWord(ahwnd:HWND;nIndex:LONGINT;wNewWord:WORD):WORD;
  2575.                       APIENTRY; 'USER32' name 'SetClassWord';
  2576.       FUNCTION GetClassLong(ahwnd:HWND;nIndex:LONGINT):ULONG;
  2577.                       APIENTRY; 'USER32' name 'GetClassLongA';
  2578.       FUNCTION SetClassLong(ahwnd:HWND;nIndex:LONGINT;dwNewLong:LONG):ULONG;
  2579.                       APIENTRY; 'USER32' name 'SetClassLongA';
  2580.       FUNCTION GetDesktopWindow:HWND;
  2581.                       APIENTRY; 'USER32' name 'GetDesktopWindow';
  2582.       FUNCTION GetParent(ahwnd:HWND):HWND;
  2583.                       APIENTRY; 'USER32' name 'GetParent';
  2584.       FUNCTION SetParent(hwndChild,hWndNewParent:HWND):HWND;
  2585.                       APIENTRY; 'USER32' name 'SetParent';
  2586.       FUNCTION EnumChildWindows(hWndParent:HWND;lpEnumFunc:WNDENUMPROC;alParam:LPARAM):BOOL;
  2587.                       APIENTRY; 'USER32' name 'EnumChildWindows';
  2588.       FUNCTION FindWindow(CONST lpClassName,lpWindowName:CSTRING):HWND;
  2589.                       APIENTRY; 'USER32' name 'FindWindowA';
  2590.       FUNCTION EnumWindows(lpEnumFunc:WNDENUMPROC;alParam:LPARAM):BOOL;
  2591.                       APIENTRY; 'USER32' name 'EnumWindows';
  2592.       FUNCTION EnumThreadWindows(dwThreadId:ULONG;lpfn:WNDENUMPROC;alParam:LPARAM):BOOL;
  2593.                       APIENTRY; 'USER32' name 'EnumThreadWindows';
  2594.       FUNCTION GetClassName(ahwnd:HWND;VAR lpClassName:CSTRING;nMaxCount:LONGINT):LONGINT;
  2595.                       APIENTRY; 'USER32' name 'GetClassNameA';
  2596.       FUNCTION GetTopWindow(ahwnd:HWND):HWND;
  2597.                       APIENTRY; 'USER32' name 'GetTopWindow';
  2598.       FUNCTION GetWindowThreadProcessId(ahwnd:HWND;VAR lpdwProcessId:ULONG):ULONG;
  2599.                       APIENTRY; 'USER32' name 'GetWindowThreadProcessId';
  2600.       FUNCTION GetLastActivePopup(ahwnd:HWND):HWND;
  2601.                       APIENTRY; 'USER32' name 'GetLastActivePopup';
  2602.       FUNCTION GetWindow(ahwnd:HWND;uCmd:ULONG):HWND;
  2603.                       APIENTRY; 'USER32' name 'GetWindow';
  2604.       FUNCTION GetNextWindow(ahwnd:HWND;uCmd:ULONG):HWND;
  2605.                       APIENTRY; 'USER32' name 'GetNextWindow';
  2606.       FUNCTION SetWindowsHook(nFilterType:LONGINT;pfnFilterProc:HOOKPROC):HOOKPROC;
  2607.                       APIENTRY; 'USER32' name 'SetWindowsHookA';
  2608.       FUNCTION UnhookWindowsHook(nCode:LONGINT;pfnFilterProc:HOOKPROC):BOOL;
  2609.                       APIENTRY; 'USER32' name 'UnhookWindowsHook';
  2610.       FUNCTION SetWindowsHookEx(idHook:LONGINT;lpfn:HOOKPROC;hmod:HINSTANCE;
  2611.                                 dwThreadId:ULONG):HHOOK;
  2612.                       APIENTRY; 'USER32' name 'SetWindowsHookExA';
  2613.       FUNCTION UnhookWindowsHookEx(hhk:HHOOK):BOOL;
  2614.                       APIENTRY; 'USER32' name 'UnhookWindowsHookEx';
  2615.       FUNCTION CallNextHookEx(hhk:HHOOK;nCode:LONGINT;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2616.                       APIENTRY; 'USER32' name 'CallNextHookEx';
  2617.       FUNCTION LoadBitmap(ahInstance:HINSTANCE;CONST lpBitmapName:CSTRING):HBITMAP;
  2618.                       APIENTRY; 'USER32' name 'LoadBitmapA';
  2619.       FUNCTION LoadCursorAPI(ahInstance:HINSTANCE;lpCursorName:PChar):HCURSOR;
  2620.                       APIENTRY; 'USER32' name 'LoadCursorA';
  2621.       FUNCTION CreateCursor(hInst:HINSTANCE;xHotSpot,yHotSpot,nWidth,nHeight:LONGINT;
  2622.                             VAR pvANDPlane,pvXORPlane):HCURSOR;
  2623.                       APIENTRY; 'USER32' name 'CreateCursor';
  2624.       FUNCTION DestroyCursor(ahCursor:HCURSOR):BOOL;
  2625.                       APIENTRY; 'USER32' name 'DestroyCursor';
  2626.       FUNCTION LoadIcon(ahInstance:HINSTANCE;CONST lpIconName:CSTRING):HICON;
  2627.                       APIENTRY; 'USER32' name 'LoadIconA';
  2628.       FUNCTION CreateIcon(ahInstance:HINSTANCE;nWidth,nHeight:LONGINT;cPlanes,cBitsPixel:BYTE;
  2629.                           VAR lpbANDBits,lpbXORBits):HICON;
  2630.                       APIENTRY; 'USER32' name 'CreateIcon';
  2631.       FUNCTION  DestroyIcon(ahIcon:HICON):BOOL;
  2632.                       APIENTRY; 'USER32' name 'DestroyIcon';
  2633.       FUNCTION LookupIconIdFromDirectory(VAR presbits;fIcon:BOOL):LONGINT;
  2634.                       APIENTRY; 'USER32' name 'LookupIconIdFromDirectory';
  2635.       FUNCTION CreateIconFromResource(VAR presbits;dwResSize:ULONG;fIcon:BOOL;
  2636.                                       dwVer:ULONG):HICON;
  2637.                       APIENTRY; 'USER32' name 'CreateIconFromResource';
  2638.       FUNCTION CreateIconFromResourceEx(VAR presbits;dwResSize:ULONG;fIcon:BOOL;
  2639.                                       dwVer:ULONG;CX,CY:LongWord;Flags:LongWord):HICON;
  2640.                       APIENTRY; 'USER32' name 'CreateIconFromResourceEx';
  2641.       FUNCTION CreateIconIndirect(VAR apiconinfo:ICONINFO):HICON;
  2642.                       APIENTRY; 'USER32' name 'CreateIconIndirect';
  2643.       FUNCTION CopyIcon(ahIcon:HICON):HICON;
  2644.                       APIENTRY; 'USER32' name 'CopyIcon';
  2645.       FUNCTION GetIconInfo(ahIcon:HICON;VAR apiconinfo:ICONINFO):BOOL;
  2646.                       APIENTRY; 'USER32' name 'GetIconInfo';
  2647.       FUNCTION LoadString(ahInstance:HINSTANCE;uID:ULONG;VAR lpBuffer;
  2648.                           nBufferMax:LONGINT):LONGINT;
  2649.                       APIENTRY; 'USER32' name 'LoadStringA';
  2650.       FUNCTION IsDialogMessage(hDlg:HWND;VAR lpMsg:MSG):BOOL;
  2651.                       APIENTRY; 'USER32' name 'IsDialogMessageA';
  2652.       FUNCTION MapDialogRect(hDlg:HWND;VAR lpRect:RECT):BOOL;
  2653.                       APIENTRY; 'USER32' name 'MapDialogRect';
  2654.       FUNCTION DlgDirList(hDlg:HWND;VAR lpPathSpec:CSTRING;nIDListBox,nIDStaticPath:LONGINT;
  2655.                           uFileType:ULONG):LONGINT;
  2656.                       APIENTRY; 'USER32' name 'DlgDirListA';
  2657.       FUNCTION DlgDirSelectEx(hDlg:HWND;VAR lpString:CSTRING;nCount,nIDListBox:LONGINT):BOOL;
  2658.                       APIENTRY; 'USER32' name 'DlgDirSelectExA';
  2659.       FUNCTION DlgDirListComboBox(hDlg:HWND;VAR lpPathSpec:CSTRING;
  2660.                                   nIDComboBox,nIDStaticPath:LONGINT):LONGINT;
  2661.                       APIENTRY; 'USER32' name 'DlgDirListComboBoxA';
  2662.       FUNCTION DlgDirSelectComboBoxEx(hDlg:HWND;VAR lpString:CSTRING;
  2663.                                       nCount,nIDComboBox:LONGINT):BOOL;
  2664.                       APIENTRY; 'USER32' name 'DlgDirSelectComboBoxExA';
  2665.       FUNCTION DefFrameProc(ahwnd:HWND;hwndMDIClient:HWND;uMsg:ULONG;
  2666.                             awParam:WPARAM;alParam:LPARAM):LRESULT;
  2667.                       APIENTRY; 'USER32' name 'DefFrameProcA';
  2668.       FUNCTION DefMDIChildProc(ahwnd:HWND;uMsg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2669.                       APIENTRY; 'USER32' name 'DefMDIChildProcA';
  2670.       FUNCTION TranslateMDISysAccel(hWndClient:HWND;VAR lpMsg:MSG):BOOL;
  2671.                       APIENTRY; 'USER32' name 'TranslateMDISysAccel';
  2672.       FUNCTION ArrangeIconicWindows(ahwnd:HWND):ULONG;
  2673.                       APIENTRY; 'USER32' name 'ArrangeIconicWindows';
  2674.       FUNCTION CreateMDIWindow(CONST lpClassName,lpWindowName:CSTRING;dwStyle:ULONG;
  2675.                                X,Y,nWidth,nHeight:LONGINT;hwndParent:HWND;
  2676.                                ahInstance:HINSTANCE;alParam:LPARAM):HWND;
  2677.                       APIENTRY; 'USER32' name 'CreateMDIWindowA';
  2678.       FUNCTION WinHelp(hwndMain:HWND;CONST lpszHelp:CSTRING;uCommand:ULONG;
  2679.                        dwData:ULONG):BOOL;
  2680.                       APIENTRY; 'USER32' name 'WinHelpA';
  2681.       FUNCTION SystemParametersInfo(uiAction,uiParam:ULONG;VAR pvParam;
  2682.                                     fWinIni:ULONG):BOOL;
  2683.                       APIENTRY; 'USER32' name 'SystemParametersInfoA';
  2684.       PROCEDURE SetDebugErrorLevel(dwLevel:ULONG);
  2685.                       APIENTRY; 'USER32' name 'SetDebugErrorLevel';
  2686.       PROCEDURE SetLastErrorEx(dwErrCode,dwType:ULONG);
  2687.                       APIENTRY; 'USER32' name 'SetLastErrorEx';
  2688.       FUNCTION DragObject(p1,p2:HWND;p3:LONGWORD;p4:LONGWORD;
  2689.                           p5:HICON):LONGWORD;
  2690.                       APIENTRY; 'USER32' name 'DragObject';
  2691.       FUNCTION CopyImage(ahandle:HANDLE;Typ:LONGWORD;cx,cy:LONGINT;Flags:LONGWORD):HICON;
  2692.                       APIENTRY; 'USER32' name 'CopyImage';
  2693.       {$ENDIF}
  2694.  
  2695.  
  2696.  
  2697.       {$IFDEF OS2}
  2698.       FUNCTION wvsprintf(VAR str1:CSTRING;CONST str2:CSTRING;arglist:POINTER):LONGINT;
  2699.                       APIENTRY; 'PMWINX' index 721;
  2700.       {FUNCTION LoadKeyboardLayout(CONST pwstKLID:CSTRING;Flags:ULONG):HKL;
  2701.                       APIENTRY; 'PMWINX' index 'LoadKeyboardLayoutA'; not supported}
  2702.       {FUNCTION ActivateKeyboardLayout(ahkl:HKL;Flags:ULONG):BOOL;
  2703.                       APIENTRY; 'PMWINX' index 'ActivateKeyboardLayout'; not supported}
  2704.       {FUNCTION UnloadKeyboardLayout(ahkl:HKL):BOOL;
  2705.                       APIENTRY; 'PMWINX' index 'UnloadKeyboardLayout'; not supported}
  2706.       {FUNCTION GetKeyboardLayoutName(VAR pwszKLID:CSTRING):BOOL;
  2707.                       APIENTRY; 'PMWINX' index 'GetKeyboardLayoutNameA'; not supported}
  2708.       {FUNCTION GetThreadDesktop(para:ULONG):HDESK;
  2709.                       APIENTRY; 'PMWINX' index 'GetThreadDesktop'; not supported}
  2710.       {FUNCTION GetProcessWindowStation:HWINSTA;
  2711.                       APIENTRY; 'PMWINX' index 'GetProcessWindowStation'; not supported}
  2712.       {FUNCTION SetUserObjectSecurity(hObj:HANDLE;VAR pSIRequested:SECURITY_INFORMATION;
  2713.                                      VAR pSID:SECURITY_DESCRIPTOR):BOOL;
  2714.                       APIENTRY; 'PMWINX' index 'SetUserObjectSecurity';
  2715.       FUNCTION GetUserObjectSecurity(hObj:HANDLE;VAR pSIRequested:SECURITY_INFORMATION;
  2716.                                      VAR pSID:SECURITY_DESCRIPTOR;nLength:ULONG;
  2717.                                      VAR lpnLengthNeeded:ULONG):BOOL;
  2718.                       APIENTRY; 'PMWINX' index 'GetUserObjectSecurity';}
  2719.       FUNCTION RegisterWindowMessage(CONST lpString:CSTRING):ULONG;
  2720.                       APIENTRY; 'PMWINX' index 558;
  2721.       FUNCTION GetMessage(VAR lpMsg:MSG;ahwnd:HWND;wMsgFilterMin,wMsgFilterMax:ULONG):BOOL;
  2722.                       APIENTRY; 'PMWINX' index 311;
  2723.       FUNCTION TranslateMessage(VAR lpMsg:MSG):BOOL;
  2724.                       APIENTRY; 'PMWINX' index 699;
  2725.       FUNCTION DispatchMessage(VAR lpMsg:MSG):LONG;
  2726.                       APIENTRY; 'PMWINX' index 149;
  2727.       {FUNCTION SetMessageQueue(cMessagesMax:LONGINT):BOOL;
  2728.                       APIENTRY; 'PMWINX' index 'SetMessageQueue'; not supported}
  2729.       FUNCTION PeekMessage(VAR lpMsg:MSG;ahWnd:HWND;wMsgFilterMin,wMsgFilterMax:ULONG;
  2730.                            wRemoveMsg:ULONG):BOOL;
  2731.                       APIENTRY; 'PMWINX' index 513;
  2732.       {FUNCTION RegisterHotKey(aHwnd:HWND;id:LONGINT;fsModifiers,vk:ULONG):BOOL;
  2733.                       APIENTRY; 'PMWINX' index 'RegisterHotKey'; not supported}
  2734.       {FUNCTION UnregisterHotKey(aHwnd:HWND;id:LONGINT):BOOL;
  2735.                       APIENTRY; 'PMWINX' index 'UnregisterHotKey'; not supported}
  2736.       FUNCTION ExitWindowsEx(uFlags:ULONG;dwReserved:ULONG):BOOL;
  2737.                       APIENTRY; 'PMWINX' index 195;
  2738.       FUNCTION SwapMouseButton(fSwap:BOOL):BOOL;
  2739.                       APIENTRY; 'PMWINX' index 682;
  2740.       FUNCTION GetMessagePos:ULONG;
  2741.                       APIENTRY; 'PMWINX' index 313;
  2742.       FUNCTION GetMessageTime:LONG;
  2743.                       APIENTRY; 'PMWINX' index 314;
  2744.       FUNCTION GetMessageExtraInfo:LONG;
  2745.                       APIENTRY; 'PMWINX' index 312;
  2746.       FUNCTION SendMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2747.                       APIENTRY; 'PMWINX' index 588;
  2748.       {FUNCTION SendMessageTimeout(ahwnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM;
  2749.                                   fuFlags:ULONG;uTimeout:ULONG;
  2750.                                   VAR lpdwResult:ULONG):LRESULT;
  2751.                       APIENTRY; 'PMWINX' index 'SendMessageTimeoutA'; not supported}
  2752.       {FUNCTION SendNotifyMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2753.                       APIENTRY; 'PMWINX' index 'SendNotifyMessageA'; not supported}
  2754.       {FUNCTION SendMessageCallback(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM;
  2755.                                    lpResultCallBack:SENDASYNCPROC;dwData:ULONG):BOOL;
  2756.                       APIENTRY; 'PMWINX' index 'SendMessageCallbackA'; not supported}
  2757.       FUNCTION PostMessage(ahWnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2758.                       APIENTRY; 'PMWINX' index 527;
  2759.       FUNCTION PostThreadMessage(idThread:ULONG;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  2760.                       APIENTRY; 'PMWINX' index 529;
  2761.       {FUNCTION AttachThreadInput(idAttach,idAttachTo:ULONG;fAttach:BOOL):BOOL;
  2762.                       APIENTRY; 'PMWINX' index 'AttachThreadInput'; not supported}
  2763.       FUNCTION ReplyMessage(alResult:LRESULT):BOOL;
  2764.                       APIENTRY; 'PMWINX' index 568;
  2765.       FUNCTION WaitMessage:BOOL;
  2766.                       APIENTRY; 'PMWINX' index 712;
  2767.       {FUNCTION WaitForInputIdle(hProcess:HANDLE;dwMilliseconds:ULONG):ULONG;
  2768.                       APIENTRY; 'PMWINX' index 'WaitForInputIdle'; not supported}
  2769.       FUNCTION DefWindowProc(ahwnd:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2770.                       APIENTRY; 'PMWINX' index 131;
  2771.       PROCEDURE PostQuitMessage(nExitCode:LONGINT);
  2772.                       APIENTRY; 'PMWINX' index 528;
  2773.       FUNCTION CallWindowProc(lpPrevWndFunc:WNDPROC;ahwnd:HWND;Msg:ULONG;
  2774.                               awParam:WPARAM;alParam:LPARAM):LRESULT;
  2775.                       APIENTRY; 'PMWINX' index 22;
  2776.       FUNCTION InSendMessage:BOOL;
  2777.                       APIENTRY; 'PMWINX' index 416;
  2778.       FUNCTION GetDoubleClickTime:ULONG;
  2779.                       APIENTRY; 'PMWINX' index 276;
  2780.       FUNCTION SetDoubleClickTime(Value:ULONG):BOOL;
  2781.                       APIENTRY; 'PMWINX' index 612;
  2782.       FUNCTION RegisterClass(lpWndClass:WNDCLASS):ATOM;
  2783.                       APIENTRY; 'PMWINX' index 556;
  2784.       FUNCTION UnregisterClass(CONST lpClassName:CSTRING;Instance:HINSTANCE):BOOL;
  2785.                       APIENTRY; 'PMWINX' index 705;
  2786.       FUNCTION GetClassInfo(ahInstance:HINSTANCE;CONST lpClassName:CSTRING;
  2787.                             VAR lpWndClass:WNDCLASS):BOOL;
  2788.                       APIENTRY; 'PMWINX' index 240;
  2789.       FUNCTION CreateWindowEx(dwExStyle:ULONG;CONST lpClassName,lpWindowName:CSTRING;
  2790.                               dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  2791.                               hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  2792.                               VAR lpParam):HWND;
  2793.                       APIENTRY; 'PMWINX' index 99;
  2794.       FUNCTION IsWindow(ahwnd:HWND):BOOL;
  2795.                       APIENTRY; 'PMWINX' index 448;
  2796.       FUNCTION IsMenu(ahMenu:HMENU):BOOL;
  2797.                       APIENTRY; 'PMWINX' index 446;
  2798.       FUNCTION IsChild(hWndParent,ahWnd:HWND):BOOL;
  2799.                       APIENTRY; 'PMWINX' index 440;
  2800.       FUNCTION DestroyWindow(ahwnd:HWND):BOOL;
  2801.                       APIENTRY; 'PMWINX' index 246;
  2802.       FUNCTION ShowWindow(ahwnd:HWND;nCmdShow:LONGINT):BOOL;
  2803.                       APIENTRY; 'PMWINX' index 671;
  2804.       FUNCTION FlashWindow(ahwnd:HWND;bInvert:BOOL):BOOL;
  2805.                       APIENTRY; 'PMWINX' index 216;
  2806.       FUNCTION ShowOwnedPopups(ahwnd:HWND;fShow:BOOL):BOOL;
  2807.                       APIENTRY; 'PMWINX' index 669;
  2808.       {FUNCTION OpenIcon(ahwnd:HWND):BOOL;
  2809.                       APIENTRY; 'PMWINX' index 'OpenIcon'; not supported}
  2810.       FUNCTION CloseWindow(ahwnd:HWND):BOOL;
  2811.                       APIENTRY; 'PMWINX' index 46;
  2812.       FUNCTION MoveWindow(ahwnd:HWND;X,Y,nWidth,nHeight:LONGINT;bRepaint:BOOL):BOOL;
  2813.                       APIENTRY; 'PMWINX' index 492;
  2814.       FUNCTION SetWindowPos(ahwnd:HWND;hwndInsertAfter:HWND;X,Y,cx,cy:LONGINT;
  2815.                             uFlags:ULONG):BOOL;
  2816.                       APIENTRY; 'PMWINX' index 662;
  2817.       FUNCTION GetWindowPlacement(ahwnd:HWND;VAR lpwndpl:WINDOWPLACEMENT):BOOL;
  2818.                       APIENTRY; 'PMWINX' index 387;
  2819.       FUNCTION SetWindowPlacement(ahwnd:HWND;VAR lpwndpl:WINDOWPLACEMENT):BOOL;
  2820.                       APIENTRY; 'PMWINX' index 661;
  2821.       FUNCTION BeginDeferWindowPos(nNumWindows:LONGINT):HDWP;
  2822.                       APIENTRY; 'PMWINX' index 15;
  2823.       FUNCTION DeferWindowPos(hWinPosInfo:HDWP;ahwnd,hwndInsertAfter:HWND;
  2824.                               x,y,cx,cy:LONGINT;uFlags:ULONG):HDWP;
  2825.                       APIENTRY; 'PMWINX' index 132;
  2826.       FUNCTION EndDeferWindowPos(hWinPosInfo:HDWP):BOOL;
  2827.                       APIENTRY; 'PMWINX' index 169;
  2828.       FUNCTION IsWindowVisible(ahwnd:HWND):BOOL;
  2829.                       APIENTRY; 'PMWINX' index 450;
  2830.       FUNCTION IsIconic(ahwnd:HWND):BOOL;
  2831.                       APIENTRY; 'PMWINX' index 445;
  2832.       {FUNCTION AnyPopup:BOOL;
  2833.                       APIENTRY; 'PMWINX' index 'AnyPopup'; not supported}
  2834.       FUNCTION BringWindowToTop(ahwnd:HWND):BOOL;
  2835.                       APIENTRY; 'PMWINX' index 19;
  2836.       FUNCTION IsZoomed(ahwnd:HWND):BOOL;
  2837.                       APIENTRY; 'PMWINX' index 451;
  2838.       FUNCTION CreateDialogParam(ahInstance:HINSTANCE;CONST lpTemplateName:CSTRING;
  2839.                                  hwndParent:HWND;lpDialogFunc:DLGPROC;
  2840.                                  dwInitParam:LPARAM):HWND;
  2841.                       APIENTRY; 'PMWINX' index 68;
  2842.       FUNCTION CreateDialogIndirectParam(ahInstance:HINSTANCE;VAR lpTemplate:DLGTEMPLATE;
  2843.                                          hwndParent:HWND;lpDialogFunc:DLGPROC;
  2844.                                          dwInitParam:LPARAM):HWND;
  2845.                       APIENTRY; 'PMWINX' index 5002;
  2846.       FUNCTION DialogBoxParam(ahInstance:HINSTANCE;CONST lpTemplateName:CSTRING;
  2847.                               hwndParent:HWND;lpDialogFunc:DLGPROC;
  2848.                               dwInitParam:LPARAM):LONGINT;
  2849.                       APIENTRY; 'PMWINX' index 148;
  2850.       FUNCTION DialogBoxIndirectParam(ahInstance:HINSTANCE;VAR hDialogTemplate:DLGTEMPLATE;
  2851.                                       hwndParent:HWND;lpDialogFunc:DLGPROC;
  2852.                                       dwInitParam:LPARAM):LONGINT;
  2853.                       APIENTRY; 'PMWINX' index 5005;
  2854.       FUNCTION EndDialog(hDlg:HWND;nResult:LONGINT):BOOL;
  2855.                       APIENTRY; 'PMWINX' index 170;
  2856.       FUNCTION GetDlgItem(hDlg:HWND;nIDDlgItem:LONGINT):HWND;
  2857.                       APIENTRY; 'PMWINX' index 273;
  2858.       FUNCTION SetDlgItemInt(hDlg:HWND;nIDDlgItem:LONGINT;uValue:ULONG;
  2859.                              bSigned:BOOL):BOOL;
  2860.                       APIENTRY; 'PMWINX' index 610;
  2861.       FUNCTION GetDlgItemInt(hDlg:HWND;nIDDlgItem:LONGINT;VAR lpTranslated:BOOL;
  2862.                              bSigned:BOOL):ULONG;
  2863.                       APIENTRY; 'PMWINX' index 274;
  2864.       FUNCTION SetDlgItemText(hDlg:HWND;nIDDlgItem:LONGINT;CONST lpString:CSTRING):BOOL;
  2865.                       APIENTRY; 'PMWINX' index 611;
  2866.       FUNCTION GetDlgItemText(hDlg:HWND;nIDDlgItem:LONGINT;VAR lpString:CSTRING;
  2867.                               nMaxCount:LONGINT):ULONG;
  2868.                       APIENTRY; 'PMWINX' index 275;
  2869.       FUNCTION CheckDlgButton(hDlg:HWND;nIDButton:LONGINT;uCheck:ULONG):BOOL;
  2870.                       APIENTRY; 'PMWINX' index 32;
  2871.       FUNCTION CheckRadioButton(hDlg:HWND;nIDFirstButton,nIDLastButton:LONGINT;
  2872.                                 nIDCheckButton:LONGINT):BOOL;
  2873.                       APIENTRY; 'PMWINX' index 34;
  2874.       FUNCTION IsDlgButtonChecked(hDlg:HWND;nIDButton:LONGINT):ULONG;
  2875.                       APIENTRY; 'PMWINX' index 444;
  2876.       FUNCTION SendDlgItemMessage(hDlg:HWND;nIDDlgItem:LONGINT;Msg:ULONG;
  2877.                                   awParam:WPARAM;alparam:LPARAM):LONG;
  2878.                       APIENTRY; 'PMWINX' index 587;
  2879.       FUNCTION GetNextDlgGroupItem(hDlg:HWND;hCtl:HWND;bPrevious:BOOL):HWND;
  2880.                       APIENTRY; 'PMWINX' index 322;
  2881.       FUNCTION GetNextDlgTabItem(hDlg:HWND;hCtl:HWND;bPrevious:BOOL):HWND;
  2882.                       APIENTRY; 'PMWINX' index 323;
  2883.       FUNCTION GetDlgCtrlID(ahwnd:HWND):LONGINT;
  2884.                       APIENTRY; 'PMWINX' index 272;
  2885.       FUNCTION GetDialogBaseUnits:LONGINT;
  2886.                       APIENTRY; 'PMWINX' index 270;
  2887.       FUNCTION DefDlgProc(hDlg:HWND;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  2888.                       APIENTRY; 'PMWINX' index 128;
  2889.       FUNCTION CallMsgFilter(VAR lpMsg:MSG;nCode:LONGINT):BOOL;
  2890.                       APIENTRY; 'PMWINX' index 20;
  2891.       FUNCTION OpenClipboard(hwndNewOwner:HWND):BOOL;
  2892.                       APIENTRY; 'PMWINX' index 502;
  2893.       FUNCTION CloseClipboard:BOOL;
  2894.                       APIENTRY; 'PMWINX' index 41;
  2895.       FUNCTION GetClipboardOwner:HWND;
  2896.                       APIENTRY; 'PMWINX' index 250;
  2897.       FUNCTION SetClipboardViewer(hwndNewViewer:HWND):HWND;
  2898.                       APIENTRY; 'PMWINX' index 603;
  2899.       FUNCTION GetClipboardViewer:HWND;
  2900.                       APIENTRY; 'PMWINX' index 251;
  2901.       FUNCTION ChangeClipboardChain(hwndRemove,hwndNewNext:HWND):BOOL;
  2902.                       APIENTRY; 'PMWINX' index 23;
  2903.       FUNCTION SetClipboardData(uFormat:ULONG;hMem:HANDLE):HANDLE;
  2904.                       APIENTRY; 'PMWINX' index 602;
  2905.       FUNCTION GetClipboardData(uFormat:ULONG):HANDLE;
  2906.                       APIENTRY; 'PMWINX' index 248;
  2907.       FUNCTION RegisterClipboardFormat(CONST lpszFormat:CSTRING):ULONG;
  2908.                       APIENTRY; 'PMWINX' index 557;
  2909.       FUNCTION CountClipboardFormats:LONGINT;
  2910.                       APIENTRY; 'PMWINX' index 56;
  2911.       FUNCTION EnumClipboardFormats(format:ULONG):ULONG;
  2912.                       APIENTRY; 'PMWINX' index 177;
  2913.       FUNCTION GetClipboardFormatName(format:ULONG;VAR lpszFormatName:CSTRING;
  2914.                                       cchMaxCount:LONGINT):LONGINT;
  2915.                       APIENTRY; 'PMWINX' index 249;
  2916.       FUNCTION EmptyClipboard:BOOL;
  2917.                       APIENTRY; 'PMWINX' index 165;
  2918.       FUNCTION IsClipboardFormatAvailable(format:ULONG):BOOL;
  2919.                       APIENTRY; 'PMWINX' index 441;
  2920.       FUNCTION GetPriorityClipboardFormat(VAR paFormatPriorityList:ULONG;
  2921.                                           cFormats:LONGINT):LONGINT;
  2922.                       APIENTRY; 'PMWINX' index 338;
  2923.       FUNCTION GetOpenClipboardWindow:HWND;
  2924.                       APIENTRY; 'PMWINX' index 328;
  2925.       FUNCTION CharToOem(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING):BOOL;
  2926.                       APIENTRY; 'PMWINX' index 28;
  2927.       FUNCTION AnsiToOem(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING):BOOL;
  2928.                       APIENTRY; 'PMWINX' index 28;
  2929.       FUNCTION OemToChar(CONST lpszSrc:CSTRING;VAR lpstDst:CSTRING):BOOL;
  2930.                       APIENTRY; 'PMWINX' index 495;
  2931.       FUNCTION OemToAnsi(CONST lpszSrc:CSTRING;VAR lpstDst:CSTRING):BOOL;
  2932.                       APIENTRY; 'PMWINX' index 495;
  2933.       FUNCTION CharToOemBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2934.                              cchDstLength:ULONG):BOOL;
  2935.                       APIENTRY; 'PMWINX' index 29;
  2936.       FUNCTION AnsiToOemBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2937.                              cchDstLength:ULONG):BOOL;
  2938.                       APIENTRY; 'PMWINX' index 29;
  2939.       FUNCTION OemToCharBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2940.                              cchDstLength:ULONG):BOOL;
  2941.                       APIENTRY; 'PMWINX' index 496;
  2942.       FUNCTION OemToAnsiBuff(CONST lpszSrc:CSTRING;VAR lpszDst:CSTRING;
  2943.                              cchDstLength:ULONG):BOOL;
  2944.                       APIENTRY; 'PMWINX' index 496;
  2945.       FUNCTION CharUpper(VAR lpsz:CSTRING):PChar;
  2946.                       APIENTRY; 'PMWINX' index 30;
  2947.       FUNCTION AnsiUpper(VAR lpsz:CSTRING):PChar;
  2948.                       APIENTRY; 'PMWINX' index 30;
  2949.       FUNCTION CharUpperBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2950.                       APIENTRY; 'PMWINX' index 31;
  2951.       FUNCTION AnsiUpperBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2952.                       APIENTRY; 'PMWINX' index 31;
  2953.       FUNCTION CharLower(VAR lpsz:CSTRING):PChar;
  2954.                       APIENTRY; 'PMWINX' index 24;
  2955.       FUNCTION AnsiLower(VAR lpsz:CSTRING):PChar;
  2956.                       APIENTRY; 'PMWINX' index 24;
  2957.       FUNCTION CharLowerBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2958.                       APIENTRY; 'PMWINX' index 25;
  2959.       FUNCTION AnsiLowerBuff(VAR lpsz:CSTRING;cchLength:ULONG):ULONG;
  2960.                       APIENTRY; 'PMWINX' index 25;
  2961.       FUNCTION CharNext(CONST lpsz:CSTRING):PChar;
  2962.                       APIENTRY; 'PMWINX' index 26;
  2963.       FUNCTION AnsiNext(CONST lpsz:CSTRING):PChar;
  2964.                       APIENTRY; 'PMWINX' index 26;
  2965.       FUNCTION CharPrev(CONST lpszStart,lpszCurrent:CSTRING):PChar;
  2966.                       APIENTRY; 'PMWINX' index 27;
  2967.       FUNCTION AnsiPrev(CONST lpszStart,lpszCurrent:CSTRING):PChar;
  2968.                       APIENTRY; 'PMWINX' index 27;
  2969.       FUNCTION IsCharAlpha(ch:CHAR):BOOL;
  2970.                       APIENTRY; 'PMWINX' index 436;
  2971.       FUNCTION IsCharAlphaNumeric(ch:CHAR):BOOL;
  2972.                       APIENTRY; 'PMWINX' index 437;
  2973.       FUNCTION IsCharUpper(ch:CHAR):BOOL;
  2974.                       APIENTRY; 'PMWINX' index 439;
  2975.       FUNCTION IsCharLower(ch:CHAR):BOOL;
  2976.                       APIENTRY; 'PMWINX' index 438;
  2977.       FUNCTION SetFocus(ahwnd:HWND):HWND;
  2978.                       APIENTRY; 'PMWINX' index 620;
  2979.       FUNCTION GetActiveWindow:HWND;
  2980.                       APIENTRY; 'PMWINX' index 225;
  2981.       FUNCTION GetFocus:HWND;
  2982.                       APIENTRY; 'PMWINX' index 290;
  2983.       {FUNCTION GetKBCodePage:ULONG;
  2984.                       APIENTRY; 'PMWINX' index 'GetKBCodePage'; not supported}
  2985.       FUNCTION GetKeyState(nVirtKey:LONGINT):SHORT;
  2986.                       APIENTRY; 'PMWINX' index 297;
  2987.       {FUNCTION GetAsyncKeyState(vKey:LONGINT):SHORT;
  2988.                       APIENTRY; 'PMWINX' index 'GetAsyncKeyState'; not supported}
  2989.       {FUNCTION GetKeyboardState(VAR lpKeyState:BYTE):BOOL;
  2990.                       APIENTRY; 'PMWINX' index 'GetKeyboardState'; not supported}
  2991.       {FUNCTION SetKeyboardState(VAR lpKeyState:BYTE):BOOL;
  2992.                       APIENTRY; 'PMWINX' index 'SetKeyboardState'; not supported}
  2993.       FUNCTION GetKeyNameText(lParam:LONG;VAR lpString:CSTRING;nSize:LONGINT):LONGINT;
  2994.                       APIENTRY; 'PMWINX' index 296;
  2995.       FUNCTION GetKeyboardType(nTypeFlag:LONGINT):LONGINT;
  2996.                       APIENTRY; 'PMWINX' index 298;
  2997.       {FUNCTION ToAscii(uVirtKey,uScanCode:ULONG;VAR lpKeyState:BYTE;VAR lpChar:WORD;
  2998.                        uFlags:ULONG):LONGINT;
  2999.                       APIENTRY; 'PMWINX' index 'ToAscii'; not supported}
  3000.       {FUNCTION OemKeyScan(wOemChar:WORD):ULONG;
  3001.                       APIENTRY; 'PMWINX' index 'OemKeyScan'; not supported}
  3002.       FUNCTION VkKeyScan(ch:CHAR):SHORT;
  3003.                       APIENTRY; 'PMWINX' index 709;
  3004.       {PROCEDURE keybd_event(bVK:BYTE;bScan:BYTE;dwFlags,dwExtraInfo:ULONG);
  3005.                       APIENTRY; 'PMWINX' index 'keybd_event'; not supported}
  3006.       {PROCEDURE mouse_event(dwFlags,dx,dy,cButtons,dwExtraInfo:ULONG);
  3007.                       APIENTRY; 'PMWINX' index 'mouse_event'; not supported}
  3008.       FUNCTION MapVirtualKey(uCode,uMapType:ULONG):ULONG;
  3009.                       APIENTRY; 'PMWINX' index 1007;
  3010.       {FUNCTION GetInputState:BOOL;
  3011.                       APIENTRY; 'PMWINX' index 'GetInputState'; not supported}
  3012.       FUNCTION GetQueueStatus(flags:ULONG):ULONG;
  3013.                       APIENTRY; 'PMWINX' index 345;
  3014.       FUNCTION GetCapture:HWND;
  3015.                       APIENTRY; 'PMWINX' index 235;
  3016.       FUNCTION SetCapture(ahwnd:HWND):HWND;
  3017.                       APIENTRY; 'PMWINX' index 597;
  3018.       FUNCTION ReleaseCapture:BOOL;
  3019.                       APIENTRY; 'PMWINX' index 559;
  3020.       FUNCTION MsgWaitForMultipleObjects(nCount:ULONG;VAR pHandles:HANDLE;
  3021.                                   fWaitAll:BOOL;dwMilliseconds,dwWakeMask:ULONG):ULONG;
  3022.                       APIENTRY; 'PMWINX' index 493;
  3023.       FUNCTION SetTimer(ahwnd:HWND;nIDEvent,uElapse:ULONG;lpTimerFunc:TIMERPROC):ULONG;
  3024.                       APIENTRY; 'PMWINX' index 653;
  3025.       FUNCTION KillTimer(ahwnd:HWND;uIDEvent:ULONG):BOOL;
  3026.                       APIENTRY; 'PMWINX' index 452;
  3027.       {FUNCTION IsWindowUnicode(ahwnd:HWND):BOOL;
  3028.                       APIENTRY; 'PMWINX' index 'IsWindowUnicode'; not supported}
  3029.       FUNCTION EnableWindow(ahwnd:HWND;bEnable:BOOL):BOOL;
  3030.                       APIENTRY; 'PMWINX' index 168;
  3031.       FUNCTION IsWindowEnabled(ahwnd:HWND):BOOL;
  3032.                       APIENTRY; 'PMWINX' index 449;
  3033.       FUNCTION LoadAccelerators(ahInstance:HINSTANCE;CONST lpTableName:CSTRING):HACCEL;
  3034.                       APIENTRY; 'PMWINX' index 457;
  3035.       FUNCTION CreateAcceleratorTable(VAR acc:ACCEL;para:LONGINT):HACCEL;
  3036.                       APIENTRY; 'PMWINX' index 57;
  3037.       FUNCTION DestroyAcceleratorTable(ahAccel:HACCEL):BOOL;
  3038.                       APIENTRY; 'PMWINX' index 141;
  3039.       {FUNCTION CopyAcceleratorTable(hAccelSrc:HACCEL;VAR lpAccelDst:ACCEL;
  3040.                                     cAccelEntries:LONGINT):LONGINT;
  3041.                       APIENTRY; 'PMWINX' index 'CopyAcceleratorTableA'; not supported}
  3042.       FUNCTION TranslateAccelerator(ahwnd:HWND;hAccTable:HACCEL;VAR lpMsg:MSG):LONGINT;
  3043.                       APIENTRY; 'PMWINX' index 697;
  3044.       FUNCTION GetSystemMetrics(nIndex:LONGINT):LONGINT;
  3045.                       APIENTRY; 'PMWINX' index 359;
  3046.       FUNCTION LoadMenu(hInsance:HINSTANCE;CONST lpMenuName:CSTRING):HMENU;
  3047.                       APIENTRY; 'PMWINX' index 462;
  3048.       FUNCTION LoadMenuIndirect(VAR lpMenuTemplate:MENUTEMPLATE):HMENU;
  3049.                       APIENTRY; 'PMWINX' index 5006;
  3050.       FUNCTION GetMenu(ahnd:HWND):HMENU;
  3051.                       APIENTRY; 'PMWINX' index 305;
  3052.       FUNCTION SetMenu(ahwnd:HWND;ahMenu:HMENU):BOOL;
  3053.                       APIENTRY; 'PMWINX' index 628;
  3054.       {FUNCTION ChangeMenu(ahMenu:HMENU;cmd:ULONG;CONST lpszNewItem:CSTRING;
  3055.                           cmdInsert,flags:ULONG):BOOL;
  3056.                       APIENTRY; 'PMWINX' index 'ChangeMenuA'; not supported}
  3057.       FUNCTION HiliteMenuItem(ahwnd:HWND;ahMenu:HMENU;uIDHiliteItem,uHilite:ULONG):BOOL;
  3058.                       APIENTRY; 'PMWINX' index 415;
  3059.       FUNCTION GetMenuString(ahMenu:HMENU;uIDItem:ULONG;VAR lpString:CSTRING;
  3060.                              nMaxCount:LONGINT;uFlag:ULONG):LONGINT;
  3061.                       APIENTRY; 'PMWINX' index 310;
  3062.       FUNCTION GetMenuState(ahMenu:HMENU;uId,uFlags:ULONG):ULONG;
  3063.                       APIENTRY; 'PMWINX' index 309;
  3064.       FUNCTION DrawMenuBar(ahwnd:HWND):BOOL;
  3065.                       APIENTRY; 'PMWINX' index 161;
  3066.       FUNCTION GetSystemMenu(ahwnd:HWND;bRevert:BOOL):HMENU;
  3067.                       APIENTRY; 'PMWINX' index 358;
  3068.       FUNCTION CreateMenu:HMENU;
  3069.                       APIENTRY; 'PMWINX' index 82;
  3070.       FUNCTION CreatePopupMenu:HMENU;
  3071.                       APIENTRY; 'PMWINX' index 91;
  3072.       FUNCTION DestroyMenu(ahMenu:HMENU):BOOL;
  3073.                       APIENTRY; 'PMWINX' index 145;
  3074.       FUNCTION CheckMenuItem(ahMenu:HMENU;uidCheckItem,uCheck:ULONG):ULONG;
  3075.                       APIENTRY; 'PMWINX' index 33;
  3076.       FUNCTION EnableMenuItem(ahMenu:HMENU;uIDEnableItem,uEnable:ULONG):BOOL;
  3077.                       APIENTRY; 'PMWINX' index 166;
  3078.       FUNCTION GetSubMenu(ahMenu:HMENU;nPos:LONGINT):HMENU;
  3079.                       APIENTRY; 'PMWINX' index 355;
  3080.       FUNCTION GetMenuItemID(ahMenu:HMENU;nPos:LONGINT):ULONG;
  3081.                       APIENTRY; 'PMWINX' index 308;
  3082.       FUNCTION GetMenuItemCount(ahMenu:HMENU):LONGINT;
  3083.                       APIENTRY; 'PMWINX' index 307;
  3084.       FUNCTION InsertMenu(ahMenu:HMENU;uPosition,uFlags,uIdNewItem:ULONG;
  3085.                           CONST lpNewItem:CSTRING):BOOL;
  3086.                       APIENTRY; 'PMWINX' index 420;
  3087.       FUNCTION AppendMenu(ahMenu:HMENU;uFlags,uIdNewItem:ULONG;
  3088.                           CONST lpNewItem:CSTRING):BOOL;
  3089.                       APIENTRY; 'PMWINX' index 9;
  3090.       FUNCTION ModifyMenu(ahMenu:HMENU;uPosition,uFlags,uIdNewItem:ULONG;
  3091.                           CONST lpNewItem:CSTRING):BOOL;
  3092.                       APIENTRY; 'PMWINX' index 488;
  3093.       FUNCTION RemoveMenu(ahMenu:HMENU;uPosition,uFlags:ULONG):BOOL;
  3094.                       APIENTRY; 'PMWINX' index 565;
  3095.       FUNCTION DeleteMenu(ahMenu:HMENU;uPosition,uFlags:ULONG):BOOL;
  3096.                       APIENTRY; 'PMWINX' index 138;
  3097.       FUNCTION SetMenuItemBitmaps(ahMenu:HMENU;uPositio,uFlags:ULONG;
  3098.                                   hBitmapUnchecked,hBitmapChecked:HBITMAP):BOOL;
  3099.                       APIENTRY; 'PMWINX' index 629;
  3100.       FUNCTION GetMenuCheckMarkDimensions:LONG;
  3101.                       APIENTRY; 'PMWINX' index 306;
  3102.       FUNCTION TrackPopupMenu(ahMenu:HMENU;uFlags:ULONG;x,y,reserved:LONGINT;
  3103.                               ahwnd:HWND;VAR prcRect:RECT):BOOL;
  3104.                       APIENTRY; 'PMWINX' index 696;
  3105.       FUNCTION DrawIcon(ahDC:HDC;x,y:LONGINT;ahIcon:HICON):BOOL;
  3106.                       APIENTRY; 'PMWINX' index 160;
  3107.       FUNCTION DrawText(ahDC:HDC;CONST lpString:CSTRING;nCount:LONGINT;
  3108.                         VAR lpRect:RECT;uFormat:ULONG):LONGINT;
  3109.                       APIENTRY; 'PMWINX' index 162;
  3110.       {FUNCTION GrayString(ahDC:HDC;ahBrush:HBRUSH;lpOutFunc:GRAYSTRINGPROC;
  3111.                           lpData:LPARAM;nCount,x,y,nWidth,nHeight:LONGINT):BOOL;
  3112.                       APIENTRY; 'PMWINX' index 'GrayStringA'; not supported}
  3113.       FUNCTION TabbedTextOut(ahDC:HDC;x,y:LONGINT;CONST lpString:CSTRING;
  3114.                              nCount,nTabPositions:LONGINT;VAR lpnTabStopPositions:LONGINT;
  3115.                              nTabOrigin:LONGINT):LONG;
  3116.                       APIENTRY; 'PMWINX' index 686;
  3117.       FUNCTION GetTabbedTextExtent(ahDC:HDC;CONST lpString:CSTRING;nCount,nTabPositions:LONGINT;
  3118.                                    VAR lpnTabStopPositions:LONGINT):ULONG;
  3119.                       APIENTRY; 'PMWINX' index 362;
  3120.       FUNCTION UpdateWindow(ahwnd:HWND):BOOL;
  3121.                       APIENTRY; 'PMWINX' index 706;
  3122.       FUNCTION SetActiveWindow(ahwnd:HWND):HWND;
  3123.                       APIENTRY; 'PMWINX' index 589;
  3124.       FUNCTION GetForegroundWindow:HWND;
  3125.                       APIENTRY; 'PMWINX' index 291;
  3126.       FUNCTION SetForegroundWindow(ahwnd:HWND):BOOL;
  3127.                       APIENTRY; 'PMWINX' index 621;
  3128.       FUNCTION WindowFromDC(ahDC:HDC):HWND;
  3129.                       APIENTRY; 'PMWINX' index 1000;
  3130.       FUNCTION GetDC(ahwnd:HWND):HDC;
  3131.                       APIENTRY; 'PMWINX' index 263;
  3132.       FUNCTION GetDCEx(ahwnd:HWND;hrgnClip:HRGN;flags:ULONG):HDC;
  3133.                       APIENTRY; 'PMWINX' index 264;
  3134.       FUNCTION GetWindowDC(ahwnd:HWND):HDC;
  3135.                       APIENTRY; 'PMWINX' index 383;
  3136.       FUNCTION ReleaseDC(ahwnd:HWND;ahDC:HDC):LONGINT;
  3137.                       APIENTRY; 'PMWINX' index 560;
  3138.       FUNCTION BeginPaint(ahwnd:HWND;VAR lpPaint:PAINTSTRUCT):HDC;
  3139.                       APIENTRY; 'PMWINX' index 16;
  3140.       FUNCTION EndPaint(ahwnd:HWND;VAR lpPaint:PAINTSTRUCT):BOOL;
  3141.                       APIENTRY; 'PMWINX' index 173;
  3142.       FUNCTION GetUpdateRect(ahwnd:HWND;VAR lpRect:RECT;bErase:BOOL):BOOL;
  3143.                       APIENTRY; 'PMWINX' index 376;
  3144.       FUNCTION GetUpdateRgn(ahwnd:HWND;ahRgn:HRGN;bErase:BOOL):LONGINT;
  3145.                       APIENTRY; 'PMWINX' index 377;
  3146.       FUNCTION ExcludeUpdateRgn(ahDC:HDC;ahWnd:HWND):LONGINT;
  3147.                       APIENTRY; 'PMWINX' index 191;
  3148.       FUNCTION InvalidateRect(ahwnd:HWND;VAR lpRect:RECT;bErase:BOOL):BOOL;
  3149.                       APIENTRY; 'PMWINX' index 426;
  3150.       FUNCTION ValidateRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  3151.                       APIENTRY; 'PMWINX' index 707;
  3152.       FUNCTION InvalidateRgn(ahwnd:HWND;ahRgn:HRGN;bErase:BOOL):BOOL;
  3153.                       APIENTRY; 'PMWINX' index 427;
  3154.       FUNCTION ValidateRgn(ahwnd:HWND;ahRgn:HRGN):BOOL;
  3155.                       APIENTRY; 'PMWINX' index 708;
  3156.       FUNCTION RedrawWindow(ahwnd:HWND;VAR lprcUpdate:RECT;hrgnUpdate:HRGN;
  3157.                             flags:ULONG):BOOL;
  3158.                       APIENTRY; 'PMWINX' index 540;
  3159.       FUNCTION LockWindowUpdate(hwndLock:HWND):BOOL;
  3160.                       APIENTRY; 'PMWINX' index 477;
  3161.       FUNCTION ScrollWindow(ahwnd:HWND;XAmount,YAmount:LONGINT;
  3162.                             VAR lpRect,lpClipRect:RECT):BOOL;
  3163.                       APIENTRY; 'PMWINX' index 581;
  3164.       FUNCTION ScrollDC(ahDC:HDC;dx,dy:LONGINT;VAR lprcScroll,lprcClip:RECT;
  3165.                         hrgnUpdate:HRGN;VAR lprcUpdate:RECT):BOOL;
  3166.                       APIENTRY; 'PMWINX' index 580;
  3167.       FUNCTION ScrollWindowEx(ahwnd:HWND;dx,dy:LONGINT;VAR prcScroll,prcClip:RECT;
  3168.                               hrgnUpdate:HRGN;VAR prcUpdate:RECT;Flags:ULONG):LONGINT;
  3169.                       APIENTRY; 'PMWINX' index 582;
  3170.       FUNCTION SetScrollPos(ahwnd:HWND;nBar,nPos:LONGINT;bRedraw:BOOL):LONGINT;
  3171.                       APIENTRY; 'PMWINX' index 642;
  3172.       FUNCTION GetScrollPos(ahwnd:HWND;nBar:LONGINT):LONGINT;
  3173.                       APIENTRY; 'PMWINX' index 351;
  3174.       FUNCTION SetScrollRange(ahwnd:HWND;nBar,nMinPos,nMaxPos:LONGINT;bRedraw:BOOL):BOOL;
  3175.                       APIENTRY; 'PMWINX' index 643;
  3176.       FUNCTION GetScrollRange(ahwnd:HWND;nBar:LONGINT;VAR lpMinPos,lpMaxPos:LONGINT):BOOL;
  3177.                       APIENTRY; 'PMWINX' index 352;
  3178.       FUNCTION ShowScrollBar(ahwnd:HWND;wBar:LONGINT;bShow:BOOL):BOOL;
  3179.                       APIENTRY; 'PMWINX' index 670;
  3180.       FUNCTION EnableScrollBar(ahwnd:HWND;wSBflags,wArrows:ULONG):BOOL;
  3181.                       APIENTRY; 'PMWINX' index 167;
  3182.       FUNCTION SetProp(ahwnd:HWND;CONST lpString:CSTRING;hData:HANDLE):BOOL;
  3183.                       APIENTRY; 'PMWINX' index 637;
  3184.       FUNCTION GetProp(ahwnd:HWND;CONST lpString:CSTRING):HANDLE;
  3185.                       APIENTRY; 'PMWINX' index 344;
  3186.       FUNCTION RemoveProp(ahwnd:HWND;CONST lpString:CSTRING):HANDLE;
  3187.                       APIENTRY; 'PMWINX' index 566;
  3188.       FUNCTION EnumPropsEx(ahwnd:HWND;lpEnumFunc:PROPENUMPROCEX;alParam:LPARAM):LONGINT;
  3189.                       APIENTRY; 'PMWINX' index 184;
  3190.       FUNCTION EnumProps(ahwnd:HWND;lpEnumFunc:PROPENUMPROC):LONGINT;
  3191.                       APIENTRY; 'PMWINX' index 183;
  3192.       FUNCTION SetWindowText(ahwnd:HWND;CONST lpString:CSTRING):BOOL;
  3193.                       APIENTRY; 'PMWINX' index 663;
  3194.       FUNCTION GetWindowText(ahwnd:HWND;VAR lpString:CSTRING;nMaxCount:LONGINT):LONGINT;
  3195.                       APIENTRY; 'PMWINX' index 389;
  3196.       FUNCTION GetWindowTextLength(ahwnd:HWND):LONGINT;
  3197.                       APIENTRY; 'PMWINX' index 390;
  3198.       FUNCTION GetClientRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  3199.                       APIENTRY; 'PMWINX' index 244;
  3200.       FUNCTION GetWindowRect(ahwnd:HWND;VAR lpRect:RECT):BOOL;
  3201.                       APIENTRY; 'PMWINX' index 388;
  3202.       FUNCTION AdjustWindowRect(VAR lpRect:RECT;dwStyle:ULONG;bMenu:BOOL):BOOL;
  3203.                       APIENTRY; 'PMWINX' index 5;
  3204.       FUNCTION AdjustWindowRectEx(VAR lpRect:RECT;dwStyle:ULONG;bMenu:BOOL;
  3205.                                   dwExStyle:ULONG):BOOL;
  3206.                       APIENTRY; 'PMWINX' index 6;
  3207.       FUNCTION MessageBox(ahwnd:HWND;CONST lpText,lpCaption:CSTRING;uType:ULONG):LONGINT;
  3208.                       APIENTRY; 'PMWINX' index 487;
  3209.       {FUNCTION MessageBoxEx(ahwnd:HWND;CONST lpText,lpCaption:CSTRING;uType:ULONG;
  3210.                             wLanguageId:WORD):LONGINT;
  3211.                       APIENTRY; 'PMWINX' index 'MessageBoxExA'; not supported}
  3212.       FUNCTION MessageBeep(uType:ULONG):BOOL;
  3213.                       APIENTRY; 'PMWINX' index 486;
  3214.       FUNCTION ShowCursor(bShow:BOOL):LONGINT;
  3215.                       APIENTRY; 'PMWINX' index 668;
  3216.       FUNCTION SetCursorPos(X,Y:LONGINT):BOOL;
  3217.                       APIENTRY; 'PMWINX' index 606;
  3218.       FUNCTION SetCursor(ahCursor:HCURSOR):HCURSOR;
  3219.                       APIENTRY; 'PMWINX' index 605;
  3220.       FUNCTION GetCursorPos(VAR lpPoint:POINT):BOOL;
  3221.                       APIENTRY; 'PMWINX' index 262;
  3222.       FUNCTION ClipCursor(VAR lpRect:RECT):BOOL;
  3223.                       APIENTRY; 'PMWINX' index 40;
  3224.       FUNCTION GetClipCursor(VAR lpRect:RECT):BOOL;
  3225.                       APIENTRY; 'PMWINX' index 246;
  3226.       FUNCTION GetCursor:HCURSOR;
  3227.                       APIENTRY; 'PMWINX' index 261;
  3228.       FUNCTION CreateCaret(ahwnd:HWND;ahBitmap:HBITMAP;nWidth,nHeight:LONGINT):BOOL;
  3229.                       APIENTRY; 'PMWINX' index 60;
  3230.       FUNCTION GetCaretBlinkTime:ULONG;
  3231.                       APIENTRY; 'PMWINX' index 236;
  3232.       FUNCTION SetCaretBlinkTime(uMSeconds:ULONG):BOOL;
  3233.                       APIENTRY; 'PMWINX' index 598;
  3234.       FUNCTION DestroyCaret:BOOL;
  3235.                       APIENTRY; 'PMWINX' index 142;
  3236.       FUNCTION HideCaret(ahwnd:HWND):BOOL;
  3237.                       APIENTRY; 'PMWINX' index 414;
  3238.       FUNCTION ShowCaret(ahwnd:HWND):BOOL;
  3239.                       APIENTRY; 'PMWINX' index 667;
  3240.       FUNCTION SetCaretPos(X,Y:LONGINT):BOOL;
  3241.                       APIENTRY; 'PMWINX' index 599;
  3242.       FUNCTION GetCaretPos(VAR lpPoint:POINT):BOOL;
  3243.                       APIENTRY; 'PMWINX' index 237;
  3244.       FUNCTION ClientToScreen(ahwnd:HWND;VAR lpPoint:POINT):BOOL;
  3245.                       APIENTRY; 'PMWINX' index 39;
  3246.       FUNCTION ScreenToClient(ahwnd:HWND;VAR lpPoint:POINT):BOOL;
  3247.                       APIENTRY; 'PMWINX' index 579;
  3248.       FUNCTION MapWindowPoints(hwndFrom,hwndTo:HWND;VAR lpPoints:POINT;cPoints:ULONG):LONGINT;
  3249.                       APIENTRY; 'PMWINX' index 484;
  3250.       FUNCTION WindowFromPoint(aPoint:POINT):HWND;
  3251.                       APIENTRY; 'PMWINX' index 716;
  3252.       FUNCTION ChildWindowFromPoint(hwndParent:HWND;aPoint:POINT):HWND;
  3253.                       APIENTRY; 'PMWINX' index 35;
  3254.       FUNCTION GetSysColor(nIndex:LONGINT):ULONG;
  3255.                       APIENTRY; 'PMWINX' index 356;
  3256.       FUNCTION SetSysColors(cElements:LONGINT;VAR lpaElements:LONGINT;
  3257.                             VAR lpaRgbValues:COLORREF):BOOL;
  3258.                       APIENTRY; 'PMWINX' index 645;
  3259.       FUNCTION DrawFocusRect(ahDC:HDC;CONST lprc:RECT):BOOL;
  3260.                       APIENTRY; 'PMWINX' index 159;
  3261.       FUNCTION FillRect(ahDC:HDC;CONST lprc:RECT;hbr:HBRUSH):LONGINT;
  3262.                       APIENTRY; 'PMWINX' index 207;
  3263.       FUNCTION FrameRect(ahDC:HDC;CONST lprc:RECT;hbr:HBRUSH):LONGINT;
  3264.                       APIENTRY; 'PMWINX' index 220;
  3265.       FUNCTION InvertRect(ahDC:HDC;VAR lprc:RECT):BOOL;
  3266.                       APIENTRY; 'PMWINX' index 428;
  3267.       FUNCTION SetRect(VAR lprc:RECT;xLeft,yTop,xRight,yBottom:LONGINT):BOOL;
  3268.                       APIENTRY; 'PMWINX' index 639;
  3269.       FUNCTION SetRectEmpty(VAR lprc:RECT):BOOL;
  3270.                       APIENTRY; 'PMWINX' index 640;
  3271.       FUNCTION CopyRect(VAR lprcDst,lprcSrc:RECT):BOOL;
  3272.                       APIENTRY; 'PMWINX' index 55;
  3273.       FUNCTION InflateRect(VAR lprc:RECT;dx,dy:LONGINT):BOOL;
  3274.                       APIENTRY; 'PMWINX' index 417;
  3275.       FUNCTION IntersectRect(VAR lprcDst:RECT;CONST lprcSrc1,lprcSrc2:RECT):BOOL;
  3276.                       APIENTRY; 'PMWINX' index 425;
  3277.       FUNCTION UnionRect(VAR lprcDst,lprcSrc1,lprcSrc2:RECT):BOOL;
  3278.                       APIENTRY; 'PMWINX' index 701;
  3279.       FUNCTION SubtractRect(VAR lprcDst,lprcSrc1,lprcSrc2:RECT):BOOL;
  3280.                       APIENTRY; 'PMWINX' index 680;
  3281.       FUNCTION OffsetRect(VAR lprc:RECT;dx,dy:LONGINT):BOOL;
  3282.                       APIENTRY; 'PMWINX' index 498;
  3283.       FUNCTION IsRectEmpty(VAR lprc:RECT):BOOL;
  3284.                       APIENTRY; 'PMWINX' index 447;
  3285.       FUNCTION EqualRect(VAR lprc1,lprc2:RECT):BOOL;
  3286.                       APIENTRY; 'PMWINX' index 187;
  3287.       FUNCTION PtInRect(CONST lprc:RECT;CONST pt:POINT):BOOL;
  3288.                       APIENTRY; 'PMWINX' index 531;
  3289.       FUNCTION GetWindowWord(ahwnd:HWND;nIndex:LONGINT):WORD;
  3290.                       APIENTRY; 'PMWINX' index 392;
  3291.       FUNCTION SetWindowWord(ahwnd:HWND;nIndex:LONGINT;nNewWord:WORD):WORD;
  3292.                       APIENTRY; 'PMWINX' index 664;
  3293.       FUNCTION GetWindowLong(ahwnd:HWND;nIndex:LONGINT):LONG;
  3294.                       APIENTRY; 'PMWINX' index 385;
  3295.       FUNCTION SetWindowLong(ahwnd:HWND;nIndex:LONGINT;dwNewLong:LONG):LONG;
  3296.                       APIENTRY; 'PMWINX' index 659;
  3297.       FUNCTION GetClassWord(ahwnd:HWND;nIndex:LONGINT):WORD;
  3298.                       APIENTRY; 'PMWINX' index 243;
  3299.       FUNCTION SetClassWord(ahwnd:HWND;nIndex:LONGINT;wNewWord:WORD):WORD;
  3300.                       APIENTRY; 'PMWINX' index 601;
  3301.       FUNCTION GetClassLong(ahwnd:HWND;nIndex:LONGINT):ULONG;
  3302.                       APIENTRY; 'PMWINX' index 241;
  3303.       FUNCTION SetClassLong(ahwnd:HWND;nIndex:LONGINT;dwNewLong:LONG):ULONG;
  3304.                       APIENTRY; 'PMWINX' index 600;
  3305.       FUNCTION GetDesktopWindow:HWND;
  3306.                       APIENTRY; 'PMWINX' index 268;
  3307.       FUNCTION GetParent(ahwnd:HWND):HWND;
  3308.                       APIENTRY; 'PMWINX' index 333;
  3309.       FUNCTION SetParent(hwndChild,hWndNewParent:HWND):HWND;
  3310.                       APIENTRY; 'PMWINX' index 633;
  3311.       FUNCTION EnumChildWindows(hWndParent:HWND;lpEnumFunc:WNDENUMPROC;alParam:LPARAM):BOOL;
  3312.                       APIENTRY; 'PMWINX' index 176;
  3313.       FUNCTION FindWindow(CONST lpClassName,lpWindowName:CSTRING):HWND;
  3314.                       APIENTRY; 'PMWINX' index 215;
  3315.       FUNCTION EnumWindows(lpEnumFunc:WNDENUMPROC;alParam:LPARAM):BOOL;
  3316.                       APIENTRY; 'PMWINX' index 186;
  3317.       FUNCTION EnumThreadWindows(dwThreadId:ULONG;lpfn:WNDENUMPROC;alParam:LPARAM):BOOL;
  3318.                       APIENTRY; 'PMWINX' index 185;
  3319.       FUNCTION GetClassName(ahwnd:HWND;VAR lpClassName:CSTRING;nMaxCount:LONGINT):LONGINT;
  3320.                       APIENTRY; 'PMWINX' index 242;
  3321.       FUNCTION GetTopWindow(ahwnd:HWND):HWND;
  3322.                       APIENTRY; 'PMWINX' index 375;
  3323.       FUNCTION GetWindowThreadProcessId(ahwnd:HWND;VAR lpdwProcessId:ULONG):ULONG;
  3324.                       APIENTRY; 'PMWINX' index 391;
  3325.       FUNCTION GetLastActivePopup(ahwnd:HWND):HWND;
  3326.                       APIENTRY; 'PMWINX' index 299;
  3327.       FUNCTION GetWindow(ahwnd:HWND;uCmd:ULONG):HWND;
  3328.                       APIENTRY; 'PMWINX' index 382;
  3329.       FUNCTION GetNextWindow(ahwnd:HWND;uCmd:ULONG):HWND;
  3330.                       APIENTRY; 'PMWINX' index 324;
  3331.       {FUNCTION SetWindowsHook(nFilterType:LONGINT;pfnFilterProc:HOOKPROC):HOOKPROC;
  3332.                       APIENTRY; 'PMWINX' index 'SetWindowsHookA'; not supported}
  3333.       {FUNCTION UnhookWindowsHook(nCode:LONGINT;pfnFilterProc:HOOKPROC):BOOL;
  3334.                       APIENTRY; 'PMWINX' index 'UnhookWindowsHook'; not supported}
  3335.       FUNCTION SetWindowsHookEx(idHook:LONGINT;lpfn:HOOKPROC;hmod:HINSTANCE;
  3336.                                 dwThreadId:ULONG):HHOOK;
  3337.                       APIENTRY; 'PMWINX' index 665;
  3338.       FUNCTION UnhookWindowsHookEx(hhk:HHOOK):BOOL;
  3339.                       APIENTRY; 'PMWINX' index 700;
  3340.       FUNCTION CallNextHookEx(hhk:HHOOK;nCode:LONGINT;awParam:WPARAM;alParam:LPARAM):LRESULT;
  3341.                       APIENTRY; 'PMWINX' index 21;
  3342.       FUNCTION LoadBitmap(ahInstance:HINSTANCE;CONST lpBitmapName:CSTRING):HBITMAP;
  3343.                       APIENTRY; 'PMWINX' index 458;
  3344.       FUNCTION LoadCursor(ahInstance:HINSTANCE;lpCursorName:PChar):HCURSOR;
  3345.                       APIENTRY; 'PMWINX' index 459;
  3346.       FUNCTION CreateCursor(hInst:HINSTANCE;xHotSpot,yHotSpot,nWidth,nHeight:LONGINT;
  3347.                             VAR pvANDPlane,pvXORPlane):HCURSOR;
  3348.                       APIENTRY; 'PMWINX' index 63;
  3349.       FUNCTION DestroyCursor(ahCursor:HCURSOR):BOOL;
  3350.                       APIENTRY; 'PMWINX' index 143;
  3351.       FUNCTION LoadIcon(ahInstance:HINSTANCE;CONST lpIconName:CSTRING):HICON;
  3352.                       APIENTRY; 'PMWINX' index 460;
  3353.       FUNCTION CreateIcon(ahInstance:HINSTANCE;nWidth,nHeight:LONGINT;cPlanes,cBitsPixel:BYTE;
  3354.                           VAR lpbANDBits,lpbXORBits):HICON;
  3355.                       APIENTRY; 'PMWINX' index 79;
  3356.       FUNCTION  DestroyIcon(ahIcon:HICON):BOOL;
  3357.                       APIENTRY; 'PMWINX' index 144;
  3358.       {FUNCTION LookupIconIdFromDirectory(VAR presbits:BYTE;fIcon:BOOL):LONGINT;
  3359.                       APIENTRY; 'PMWINX' index 'LookupIconIdFromDirectory'; not supported}
  3360.       FUNCTION CreateIconFromResource(VAR presbits:BYTE;dwResSize:ULONG;fIcon:BOOL;
  3361.                                       dwVer:ULONG):HICON;
  3362.                       APIENTRY; 'PMWINX' index 80;
  3363.       FUNCTION CreateIconIndirect(VAR apiconinfo:ICONINFO):HICON;
  3364.                       APIENTRY; 'PMWINX' index 5003;
  3365.       FUNCTION CopyIcon(ahIcon:HICON):HICON;
  3366.                       APIENTRY; 'PMWINX' index 53;
  3367.       FUNCTION GetIconInfo(ahIcon:HICON;VAR apiconinfo:ICONINFO):BOOL;
  3368.                       APIENTRY; 'PMWINX' index 294;
  3369.       FUNCTION LoadString(ahInstance:HINSTANCE;uID:ULONG;VAR lpBuffer;
  3370.                           nBufferMax:LONGINT):LONGINT;
  3371.                       APIENTRY; 'PMWINX' index 464;
  3372.       FUNCTION IsDialogMessage(hDlg:HWND;VAR lpMsg:MSG):BOOL;
  3373.                       APIENTRY; 'PMWINX' index 443;
  3374.       FUNCTION MapDialogRect(hDlg:HWND;VAR lpRect:RECT):BOOL;
  3375.                       APIENTRY; 'PMWINX' index 483;
  3376.       FUNCTION DlgDirList(hDlg:HWND;VAR lpPathSpec:CSTRING;nIDListBox,nIDStaticPath:LONGINT;
  3377.                           uFileType:ULONG):LONGINT;
  3378.                       APIENTRY; 'PMWINX' index 150;
  3379.       FUNCTION DlgDirSelectEx(hDlg:HWND;VAR lpString:CSTRING;nCount,nIDListBox:LONGINT):BOOL;
  3380.                       APIENTRY; 'PMWINX' index 153;
  3381.       FUNCTION DlgDirListComboBox(hDlg:HWND;VAR lpPathSpec:CSTRING;
  3382.                                   nIDComboBox,nIDStaticPath:LONGINT):LONGINT;
  3383.                       APIENTRY; 'PMWINX' index 151;
  3384.       FUNCTION DlgDirSelectComboBoxEx(hDlg:HWND;VAR lpString:CSTRING;
  3385.                                       nCount,nIDComboBox:LONGINT):BOOL;
  3386.                       APIENTRY; 'PMWINX' index 152;
  3387.       FUNCTION DefFrameProc(ahwnd:HWND;hwndMDIClient:HWND;uMsg:ULONG;
  3388.                             awParam:WPARAM;alParam:LPARAM):LRESULT;
  3389.                       APIENTRY; 'PMWINX' index 129;
  3390.       FUNCTION DefMDIChildProc(ahwnd:HWND;uMsg:ULONG;awParam:WPARAM;alParam:LPARAM):LRESULT;
  3391.                       APIENTRY; 'PMWINX' index 130;
  3392.       FUNCTION TranslateMDISysAccel(hWndClient:HWND;VAR lpMsg:MSG):BOOL;
  3393.                       APIENTRY; 'PMWINX' index 698;
  3394.       FUNCTION ArrangeIconicWindows(ahwnd:HWND):ULONG;
  3395.                       APIENTRY; 'PMWINX' index 12;
  3396.       FUNCTION CreateMDIWindow(CONST lpClassName,lpWindowName:CSTRING;dwStyle:ULONG;
  3397.                                X,Y,nWidth,nHeight:LONGINT;hwndParent:HWND;
  3398.                                ahInstance:HINSTANCE;alParam:LPARAM):HWND;
  3399.                       APIENTRY; 'PMWINX' index 81;
  3400.       FUNCTION WinHelp(hwndMain:HWND;CONST lpszHelp:CSTRING;uCommand:ULONG;
  3401.                        dwData:ULONG):BOOL;
  3402.                       APIENTRY; 'PMWINX' index 715;
  3403.       FUNCTION SystemParametersInfo(uiAction,uiParam:ULONG;VAR pvParam;
  3404.                                     fWinIni:ULONG):BOOL;
  3405.                       APIENTRY; 'PMWINX' index 683;
  3406.       {PROCEDURE SetDebugErrorLevel(dwLevel:ULONG);
  3407.                       APIENTRY; 'PMWINX' index 'SetDebugErrorLevel';  not supported}
  3408.       {PROCEDURE SetLastErrorEx(dwErrCode,dwType:ULONG);
  3409.                       APIENTRY; 'PMWINX' index 'SetLastErrorEx'; not supported}
  3410.       function GetACP: UINT;
  3411.              APIENTRY; 'PMWINX' index 224;
  3412.       function ResetDC(DC: HDC; const p2: TDeviceMode): HDC;
  3413.              APIENTRY; 'PMWINX' index 569;
  3414.       function wsprintf(Output: PChar; Format: PChar): Integer;
  3415.              APIENTRY; 'PMWINX' index 720;
  3416.       function GetOEMCP: UINT;
  3417.              APIENTRY; 'PMWINX' index 325;
  3418.       function WinCallWinMain(argc:LONGINT;argv:PChar;MainFunc:FNMAIN;ncmdShow:longint):LONGINT;
  3419.              APIENTRY; 'PMWINX' index 6000;
  3420.       {$ENDIF}
  3421. END;
  3422.  
  3423. FUNCTION MAKEWPARAM(l,h:INTEGER):WPARAM;
  3424. FUNCTION MAKELPARAM(l,h:INTEGER):LPARAM;
  3425. FUNCTION MAKELRESULT(l,h:INTEGER):LRESULT;
  3426. FUNCTION ExitWindows(dwReserved:ULONG;Code:ULONG):BOOL;
  3427. {$IFDEF VER30}
  3428. FUNCTION CreateWindow(CONST lpClassName,lpWindowName:CSTRING;
  3429.                       dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  3430.                       hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  3431.                       VAR lpParam):HWND;CDECL;
  3432. {$ELSE}
  3433. FUNCTION CreateWindow(CONST lpClassName,lpWindowName:CSTRING;
  3434.                       dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  3435.                       hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  3436.                       VAR lpParam):HWND;
  3437. {$ENDIF}
  3438. FUNCTION CreateDialog(ahInstance:HINSTANCE;CONST DialogId:CSTRING;
  3439.                       hWndParent:HWND;lpDialogFunc:DLGPROC):HWND;
  3440. FUNCTION PostAppMessage(idThread:ULONG;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  3441. FUNCTION CreateDialogIndirect(ahInstance:HINSTANCE;VAR lpTemplate:DLGTEMPLATE;
  3442.                               hwndParent:HWND;lpDialogFunc:DLGPROC):HWND;
  3443. FUNCTION DialogBoxIndirect(ahInstance:HINSTANCE;VAR hDialogTemplate:DLGTEMPLATE;
  3444.                            hwndParent:HWND;lpDialogFunc:DLGPROC):LONGINT;
  3445. FUNCTION DialogBox(ahInstance:HINSTANCE;CONST DialogId:CSTRING;hwndParent:HWND;
  3446.                    DialogProc:DLGPROC):LONGINT;
  3447. FUNCTION EnumTaskWindows(dwTaskId:ULONG;lpfn:WNDENUMPROC;alParam:LPARAM):BOOL;
  3448. FUNCTION GetSysModalWindow:HWND;
  3449. FUNCTION SetSysModalWindow(ahwnd:HWND):HWND;
  3450. FUNCTION GetWindowTask(ahwnd:HWND):ULONG;
  3451. FUNCTION DefHookProc(nCode:LONGINT;awParam:WPARAM;alParam:LPARAM;phhk:HHOOK):LRESULT;
  3452.  
  3453. FUNCTION CopyCursor(ahCursor:HCURSOR):HCURSOR;
  3454.  
  3455. FUNCTION MakeIntResource(i:LONGINT):PChar;
  3456. {$IFDEF WIN95}
  3457. FUNCTION MenuItemFromPoint(ahWnd:HWND;ahMenu:HMENU;CONST ptScreen:POINT):BOOL;
  3458. FUNCTION DragDetect(p1:HWND;CONST p2:POINT):BOOL;
  3459. FUNCTION WindowFromPoint(CONST aPoint:POINT):HWND;
  3460. FUNCTION ChildWindowFromPoint(hwndParent:HWND;CONST aPoint:POINT):HWND;
  3461. FUNCTION ChildWindowFromPointEx(ahWnd:HWND;CONST aPoint:POINT;Flags:LONGWORD):HWND;
  3462. FUNCTION LoadCursor(Handle:HINSTANCE;Name:PChar):HCURSOR;
  3463. {$ENDIF}
  3464.  
  3465.  
  3466.  
  3467. IMPLEMENTATION
  3468.  
  3469. {$IFDEF WIN95}
  3470. Function LoadCursor(Handle:HINSTANCE;Name:PChar):HCURSOR;
  3471. Var c,c1,c2:CString;
  3472.     ResHandle:LongWord;
  3473.     Size:LongWord;
  3474.     pbBuffer:Pointer;
  3475.     f:file;
  3476. Begin
  3477.      If Handle=0 Then
  3478.      Begin
  3479.           Result:=LoadCursorAPI(Handle,Name);
  3480.           exit;
  3481.      End;
  3482.  
  3483.      Result:=LoadCursorAPI(Handle,Name);
  3484.      If Result<>0 Then exit;
  3485.  
  3486.      If GetTempPath(255,C1)=0 Then exit;
  3487.      C:='#'+tostr(LongWord(Name));
  3488.      ResHandle:=FindResource(DllModule,C,MAKEINTRESOURCE(RT_CURSOR)^);
  3489.      If ResHandle=0 Then exit;
  3490.      pbBuffer:=Pointer(LoadResource(DllModule,ResHandle));
  3491.      If pbBuffer=Nil Then exit;
  3492.      Size:=SizeOfResource(DllModule,ResHandle);
  3493.  
  3494.      If WinBase.GetTempFileName(C1,'SIB',0,C2)=0 Then exit;
  3495.  
  3496.      System.Assign(f,C2);
  3497.      {$I-}
  3498.      Rewrite(f);
  3499.      {$I+}
  3500.      If IoResult<>0 Then exit;
  3501.      {$I-}
  3502.      BlockWrite(f,pbBuffer^,Size);
  3503.      System.Close(f);
  3504.      {$I+}
  3505.  
  3506.      Result:=LoadCursorFromFile(C2);
  3507.      System.Assign(f,c2);
  3508.      {$I-}
  3509.      Erase(f);
  3510.      {$I+}
  3511. End;
  3512. {$ENDIF}
  3513.  
  3514. {$IFDEF WIN95}
  3515. FUNCTION MenuItemFromPoint(ahWnd:HWND;ahMenu:HMENU;CONST ptScreen:POINT):BOOL;
  3516. BEGIN
  3517.      ASM
  3518.         MOV EAX,ptScreen
  3519.         PUSH DWORD PTR [EAX+4]
  3520.         PUSH DWORD PTR [EAX]
  3521.         PUSH DWORD PTR ahMenu
  3522.         PUSH DWORD PTR ahWnd
  3523.         CALLDLL USER32,'MenuItemFromPoint'
  3524.         MOV result,EAX
  3525.      END;
  3526. END;
  3527.  
  3528. FUNCTION DragDetect(p1:HWND;CONST p2:POINT):BOOL;
  3529. BEGIN
  3530.     ASM
  3531.        MOV EAX,p2
  3532.        PUSH DWORD PTR [EAX+4]
  3533.        PUSH DWORD PTR [EAX]
  3534.        PUSH DWORD PTR p1
  3535.        CALLDLL USER32,'DragDetect'
  3536.        MOV result,EAX
  3537.     END;
  3538. END;
  3539.  
  3540. FUNCTION WindowFromPoint(CONST aPoint:POINT):HWND;
  3541. BEGIN
  3542.      ASM
  3543.         MOV EAX,aPoint
  3544.         PUSH DWORD PTR [EAX+4]
  3545.         PUSH DWORD PTR [EAX]
  3546.         CALLDLL USER32,'WindowFromPoint'
  3547.         MOV result,EAX
  3548.      END;
  3549. END;
  3550.  
  3551. FUNCTION ChildWindowFromPoint(hwndParent:HWND;CONST aPoint:POINT):HWND;
  3552. BEGIN
  3553.      ASM
  3554.         MOV EAX,aPoint
  3555.         PUSH DWORD PTR [EAX+4]
  3556.         PUSH DWORD PTR [EAX]
  3557.         PUSH DWORD PTR hwndParent
  3558.         CALLDLL USER32,'ChildWindowFromPoint'
  3559.         MOV result,EAX
  3560.      END
  3561. END;
  3562.  
  3563. FUNCTION ChildWindowFromPointEx(ahWnd:HWND;CONST aPoint:POINT;Flags:LONGWORD):HWND;
  3564. BEGIN
  3565.      ASM
  3566.         PUSH DWORD PTR Flags
  3567.         MOV EAX,aPoint
  3568.         PUSH DWORD PTR [EAX+4]
  3569.         PUSH DWORD PTR [EAX]
  3570.         PUSH DWORD PTR ahwnd
  3571.         CALLDLL USER32,'ChildWindowFromPointEx'
  3572.         MOV result,EAX
  3573.      END
  3574. END;
  3575. {$ENDIF}
  3576.  
  3577. FUNCTION CreateDialog(ahInstance:HINSTANCE;CONST DialogId:CSTRING;
  3578.                       hWndParent:HWND;lpDialogFunc:DLGPROC):HWND;
  3579. BEGIN
  3580.    result:=CreateDialogParam(ahInstance, DialogId,
  3581.                              hWndParent, lpDialogFunc, 0);
  3582. END;
  3583.  
  3584. FUNCTION DialogBox(ahInstance:HINSTANCE;CONST DialogId:CSTRING;hwndParent:HWND;
  3585.                    DialogProc:DLGPROC):LONGINT;
  3586. BEGIN
  3587.      DialogBox:=DialogBoxParam(ahInstance,DialogId,hwndParent,DialogProc,0);
  3588. END;
  3589.  
  3590. FUNCTION MakeIntResource(i:LONGINT):PChar;
  3591. BEGIN
  3592.      MakeIntResource:=PChar(i);
  3593. END;
  3594.  
  3595.  
  3596. FUNCTION MAKEWPARAM(l,h:INTEGER):WPARAM;
  3597. BEGIN
  3598.      MAKEWPARAM:=MAKELONG(l,h);
  3599. END;
  3600.  
  3601. FUNCTION MAKELPARAM(l,h:INTEGER):LPARAM;
  3602. BEGIN
  3603.      MAKELPARAM:=MAKELONG(l,h);
  3604. END;
  3605.  
  3606. FUNCTION MAKELRESULT(l,h:INTEGER):LRESULT;
  3607. BEGIN
  3608.      MAKELRESULT:=MAKELONG(l,h);
  3609. END;
  3610.  
  3611. FUNCTION ExitWindows(dwReserved:ULONG;Code:ULONG):BOOL;
  3612. BEGIN
  3613.      ExitWindows:=ExitWindowsEx(EWX_LOGOFF,$FFFFFFFF);
  3614. END;
  3615.  
  3616. {$IFDEF VER20}
  3617. FUNCTION CreateWindow(CONST lpClassName,lpWindowName:CSTRING;
  3618.                       dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  3619.                       hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  3620.                       VAR lpParam):HWND;CDECL;
  3621. {$ELSE}
  3622. FUNCTION CreateWindow(CONST lpClassName,lpWindowName:CSTRING;
  3623.                       dwStyle:ULONG;X,Y,nWidth,nHeight:LONGINT;
  3624.                       hwndParent:HWND;ahMenu:HMENU;ahInstance:HINSTANCE;
  3625.                       VAR lpParam):HWND;
  3626. {$ENDIF}
  3627. BEGIN
  3628.      CreateWindow:=CreateWindowEx(0,lpClassName,lpWindowName,dwStyle,
  3629.                                   X,Y,nWidth,nHeight,hwndParent,ahMenu,
  3630.                                   ahInstance,lpParam);
  3631. END;
  3632.  
  3633. FUNCTION PostAppMessage(idThread:ULONG;Msg:ULONG;awParam:WPARAM;alParam:LPARAM):BOOL;
  3634. BEGIN
  3635.      PostAppMessage:=PostThreadMessage(idThread,Msg,awParam,alParam);
  3636. END;
  3637.  
  3638. FUNCTION CreateDialogIndirect(ahInstance:HINSTANCE;VAR lpTemplate:DLGTEMPLATE;
  3639.                               hwndParent:HWND;lpDialogFunc:DLGPROC):HWND;
  3640. BEGIN
  3641.      CreateDialogIndirect:=CreateDialogIndirectParam(ahInstance,lpTemplate,
  3642.                    hwndParent,lpDialogFunc,0);
  3643. END;
  3644.  
  3645. FUNCTION DialogBoxIndirect(ahInstance:HINSTANCE;VAR hDialogTemplate:DLGTEMPLATE;
  3646.                            hwndParent:HWND;lpDialogFunc:DLGPROC):LONGINT;
  3647. BEGIN
  3648.      DialogBoxIndirect:=DialogBoxIndirectParam(ahInstance,hDialogTemplate,
  3649.                               hwndParent,lpDialogFunc,0);
  3650. END;
  3651.  
  3652. FUNCTION EnumTaskWindows(dwTaskId:ULONG;lpfn:WNDENUMPROC;alParam:LPARAM):BOOL;
  3653. BEGIN
  3654.      EnumTaskWindows:=EnumThreadWindows(dwTaskId,lpfn,alParam);
  3655. END;
  3656.  
  3657. FUNCTION GetSysModalWindow:HWND;
  3658. BEGIN
  3659.      GetSysModalWindow:=0;
  3660. END;
  3661.  
  3662. FUNCTION SetSysModalWindow(ahwnd:HWND):HWND;
  3663. BEGIN
  3664.      SetSysModalWindow:=0;
  3665. END;
  3666.  
  3667. FUNCTION GetWindowTask(ahwnd:HWND):ULONG;
  3668. BEGIN
  3669.      GetWindowTask:=GetWindowThreadProcessId(ahwnd,NIL);
  3670. END;
  3671.  
  3672. FUNCTION DefHookProc(nCode:LONGINT;awParam:WPARAM;alParam:LPARAM;phhk:HHOOK):LRESULT;
  3673. BEGIN
  3674.      DefHookProc:=CallNextHookEx(phhk,nCode,awParam,alParam);
  3675. END;
  3676.  
  3677. FUNCTION CopyCursor(ahCursor:HCURSOR):HCURSOR;
  3678. BEGIN
  3679.      CopyCursor:=CopyIcon(ahCursor);
  3680. END;
  3681.  
  3682.  
  3683. END.
  3684.