Module: WinAPISys
Overview
- Author
-
Jerry Fernholz
- Date
-
21 May 2009
Constants related to the Win32 API
Constant Summary collapse
- KEYEVENTF_KEYDOWN =
Keyboard Event constants
0- WM_MOVE =
0x0003- WM_SIZE =
0x0005- WM_ACTIVATE =
0x0006- WM_SETFOCUS =
0x0007- WM_KILLFOCUS =
0x0008- WM_SETREDRAW =
0x000B- WM_SETTEXT =
0x000C- WM_GETTEXT =
0x000D- WM_GETTEXTLENGTH =
0x000E- WM_PAINT =
0x000F- WM_ERASEBKGND =
0x0014- WM_SYSCOLORCHANGE =
0x0015- WM_SHOWWINDOW =
0x0018- WM_WININICHANGE =
0x001A- WM_FONTCHANGE =
0x001D- WM_CANCELMODE =
0x001F- WM_SETCURSOR =
0x0020- WM_NEXTDLGCTL =
0x0028- WM_DRAWITEM =
0x002B- WM_MEASUREITEM =
0x002C- WM_DELETEITEM =
0x002D- WM_SETFONT =
0x0030- WM_GETFONT =
0x0031- WM_COMPAREITEM =
0x0039- WM_WINDOWPOSCHANGED =
0x0047- WM_NOTIFY =
0x004E- WM_HELP =
0x0053- WM_STYLECHANGED =
0x007D- WM_GETDLGCODE =
0x0087- WM_KEYFIRST =
0x0100- WM_KEYDOWN =
0x0100- WM_KEYUP =
0x0101- WM_CHAR =
0x0102- WM_DEADCHAR =
0x0103- WM_SYSKEYDOWN =
0x0104- WM_SYSKEYUP =
0x0105- WM_SYSCHAR =
0x0106- WM_SYSDEADCHAR =
0x0107- WM_KEYLAST =
0x0108- WM_IM_INFO =
0x010C- WM_IME_STARTCOMPOSITION =
0x010D- WM_IME_ENDCOMPOSITION =
0x010E- WM_IME_COMPOSITION =
0x010F- WM_IME_KEYLAST =
0x010F- WM_IME_SETCONTEXT =
0x0281- WM_IME_NOTIFY =
0x0282- WM_IME_CONTROL =
0x0283- WM_IME_COMPOSITIONFULL =
0x0284- WM_IME_SELECT =
0x0285- WM_IME_CHAR =
0x0286- WM_IME_SYSTEM =
0x0287- WM_IME_REQUEST =
0x0288- WM_IME_KEYDOWN =
0x0290- WM_IME_KEYUP =
0x0291- WM_INITDIALOG =
0x0110- WM_COMMAND =
0x0111- WM_SYSCOMMAND =
0x0112- WM_TIMER =
0x0113- WM_HSCROLL =
0x0114- WM_VSCROLL =
0x0115- WM_INITMENUPOPUP =
0x0117- WM_MENUCHAR =
0x0120- WM_MOUSEFIRST =
0x0200- WM_MOUSEMOVE =
0x0200- WM_LBUTTONDOWN =
0x0201- WM_LBUTTONUP =
0x0202- WM_LBUTTONDBLCLK =
0x0203- WM_RBUTTONDOWN =
0x0204- WM_RBUTTONUP =
0x0205- WM_RBUTTONDBLCLK =
0x0206- WM_MBUTTONDOWN =
0x0207- WM_MBUTTONUP =
0x0208- WM_MBUTTONDBLCLK =
0x0209- WM_MOUSELAST =
0x0209- WM_MOUSEWHEEL =
0x020A- WM_ENTERMENULOOP =
0x0211- WM_EXITMENULOOP =
0x0212- WM_CAPTURECHANGED =
0x0215- WM_CUT =
0x0300- WM_COPY =
0x0301- WM_PASTE =
0x0302- WM_CLEAR =
0x0303- WM_UNDO =
0x0304- WM_RENDERFORMAT =
0x0305- WM_RENDERALLFORMATS =
0x0306- WM_DESTROYCLIPBOARD =
0x0307- WM_QUERYNEWPALETTE =
0x030F- WM_PALETTECHANGED =
0x0311- WM_CTLCOLORMSGBOX =
0x0132- WM_CTLCOLOREDIT =
0x0133- WM_CTLCOLORLISTBOX =
0x0134- WM_CTLCOLORBTN =
0x0135- WM_CTLCOLORDLG =
0x0136- WM_CTLCOLORSCROLLBAR =
0x0137- WM_CTLCOLORSTATIC =
0x0138- WM_VKEYTOITEM =
0x002E- WM_CHARTOITEM =
0x002F- WM_QUERYDRAGICON =
0x0037- WM_DBNOTIFICATION =
0x03FD- WM_NETCONNECT =
0x03FE- WM_HIBERNATE =
0x03FF- WM_APP =
0x8000- WM_USER =
0x0400- WS_OVERLAPPED =
0x00000000- WS_CLIPSIBLINGS =
0x04000000- WS_CLIPCHILDREN =
0x02000000- WS_CAPTION =
0x00C00000- WS_BORDER =
0x00800000- WS_DLGFRAME =
0x00400000- WS_VSCROLL =
0x00200000- WS_HSCROLL =
0x00100000- WS_SYSMENU =
0x00080000- WS_THICKFRAME =
0x00040000- WS_MAXIMIZEBOX =
0x00020000- WS_MINIMIZEBOX =
0x00010000- WS_POPUP =
0x80000000- WS_EX_DLGMODALFRAME =
0x00000001- WS_EX_TOPMOST =
0x00000008- WS_EX_TOOLWINDOW =
0x00000080- WS_EX_WINDOWEDGE =
0x00000100- WS_EX_CLIENTEDGE =
0x00000200- WS_EX_CONTEXTHELP =
0x00000400- WS_EX_STATICEDGE =
0x00020000- WS_EX_CAPTIONOKBTN =
0x80000000- WS_EX_NODRAG =
0x40000000- WS_EX_ABOVESTARTUP =
0x20000000- WS_EX_INK =
0x10000000- WS_EX_NOANIMATION =
0x04000000- CS_VREDRAW =
0x0001- CS_HREDRAW =
0x0002- CS_DBLCLKS =
0x0008- CS_PARENTDC =
0x0080- CS_NOCLOSE =
0x0200- CS_SAVEBITS =
0x0800- CS_GLOBALCLASS =
0x4000- CS_IME =
0x00010000- DFCS_CAPTIONCLOSE =
0x0000- DFCS_CAPTIONHELP =
0x0004- DFCS_CAPTIONOKBTN =
0x0080- DFCS_CAPTIONMIN =
0x0020- DFCS_CAPTIONMAX =
0x0040- DFCS_CAPTIONRESTORE =
0x0800- DFCS_SCROLLUP =
0x0000- DFCS_SCROLLDOWN =
0x0001- DFCS_SCROLLLEFT =
0x0002- DFCS_SCROLLRIGHT =
0x0003- DFCS_SCROLLCOMBOBOX =
0x0005- DFCS_BUTTONCHECK =
0x0000- DFCS_BUTTONRADIO =
0x0004- DFCS_BUTTON3STATE =
0x0008- DFCS_BUTTONPUSH =
0x0010- DFCS_INACTIVE =
0x0100- DFCS_PUSHED =
0x0200- DFCS_CHECKED =
0x0400- EW_RESTARTWINDOWS =
0x0042- EW_REBOOTSYSTEM =
0x0043- EW_EXITANDEXECAPP =
0x0044- HWND_BROADCAST =
0xffff- PM_NOREMOVE =
0x0000- PM_REMOVE =
0x0001- PM_NOYIELD =
0x0002- MWMO_INPUTAVAILABLE =
0x0004- QS_KEY =
0x0001- QS_MOUSEMOVE =
0x0002- QS_MOUSEBUTTON =
0x0004- QS_POSTMESSAGE =
0x0008- QS_TIMER =
0x0010- QS_PAINT =
0x0020- QS_SENDMESSAGE =
0x0040- SMTO_NORMAL =
0x0000- SWP_NOSIZE =
0x0001- SWP_NOMOVE =
0x0002- SWP_NOZORDER =
0x0004- SWP_NOACTIVATE =
0x0010- SWP_FRAMECHANGED =
0x0020- SWP_SHOWWINDOW =
0x0040- SWP_HIDEWINDOW =
0x0080- SWP_NOOWNERZORDER =
0x0200- MF_BYCOMMAND =
0x00000000- MF_BYPOSITION =
0x00000400- MF_SEPARATOR =
0x00000800- MF_ENABLED =
0x00000000- MF_GRAYED =
0x00000001- MF_UNCHECKED =
0x00000000- MF_CHECKED =
0x00000008- MF_STRING =
0x00000000- MF_OWNERDRAW =
0x00000100- MF_POPUP =
0x00000010- MF_MENUBARBREAK =
0x00000020- MF_MENUBREAK =
0x00000040- MF_UNHILITE =
0x00000000- MF_HILITE =
0x00000080- MF_END =
0x00000080- MFT_RADIOCHECK =
0x00000200- SC_CLOSE =
0xF060- SC_KEYMENU =
0xF100- MIIM_STATE =
0x00000001- MIIM_ID =
0x00000002- MIIM_SUBMENU =
0x00000004- MIIM_CHECKMARKS =
0x00000008- MIIM_TYPE =
0x00000010- MIIM_DATA =
0x00000020- TPM_LEFTALIGN =
0x0000- TPM_CENTERALIGN =
0x0004- TPM_RIGHTALIGN =
0x0008- TPM_TOPALIGN =
0x0000- TPM_VCENTERALIGN =
0x0010- TPM_BOTTOMALIGN =
0x0020- TPM_HORIZONTAL =
0x0000- TPM_VERTICAL =
0x0040- TPM_NONOTIFY =
0x0080- TPM_RETURNCMD =
0x0100- FNOINVERT =
0x02- FSHIFT =
0x04- FCONTROL =
0x08- FALT =
0x10- DCX_WINDOW =
0x00000001- DCX_CACHE =
0x00000002- DCX_CLIPCHILDREN =
0x00000008- DCX_CLIPSIBLINGS =
0x00000010- DCX_EXCLUDERGN =
0x00000040- DCX_INTERSECTRGN =
0x00000080- DCX_EXCLUDEUPDATE =
0x00000100- DCX_INTERSECTUPDATE =
0x00000200- WM_NULL =
0x0000- WM_CREATE =
0x0001- WM_DESTROY =
0x0002- WM_CLOSE =
0x0010- WM_QUIT =
0x0012- WM_COPYDATA =
0x004A- WS_CHILD =
0x40000000- WS_VISIBLE =
0x10000000- WS_DISABLED =
0x08000000- WS_GROUP =
0x00020000- WS_TABSTOP =
0x00010000- WS_EX_NOACTIVATE =
0x08000000- CW_USEDEFAULT =
0x80000000- WM_ENABLE =
0x000A- SYS_COLOR_INDEX_FLAG =
0x40000000- MOUSEEVENTF_MOVE =
0x0001- MOUSEEVENTF_LEFTDOWN =
0x0002- MOUSEEVENTF_LEFTUP =
0x0004- MOUSEEVENTF_RIGHTDOWN =
0x0008- MOUSEEVENTF_RIGHTUP =
0x0010- MOUSEEVENTF_MIDDLEDOWN =
0x0020- MOUSEEVENTF_MIDDLEUP =
0x0040- MOUSEEVENTF_WHEEL =
0x0800- MOUSEEVENTF_VIRTUALDESK =
0x4000- MOUSEEVENTF_ABSOLUTE =
0x8000- MOUSEEVENTF_TOUCH =
0x100000- RDW_INVALIDATE =
0x0001- RDW_INTERNALPAINT =
0x0002- RDW_ERASE =
0x0004- RDW_VALIDATE =
0x0008- RDW_NOERASE =
0x0020- RDW_NOCHILDREN =
0x0040- RDW_ALLCHILDREN =
0x0080- RDW_UPDATENOW =
0x0100- RDW_ERASENOW =
0x0200- MB_OK =
0x00000000- MB_OKCANCEL =
0x00000001- MB_ABORTRETRYIGNORE =
0x00000002- MB_YESNOCANCEL =
0x00000003- MB_YESNO =
0x00000004- MB_RETRYCANCEL =
0x00000005- MB_ICONHAND =
0x00000010- MB_ICONQUESTION =
0x00000020- MB_ICONEXCLAMATION =
0x00000030- MB_ICONASTERISK =
0x00000040- MB_DEFBUTTON1 =
0x00000000- MB_DEFBUTTON2 =
0x00000100- MB_DEFBUTTON3 =
0x00000200- MB_DEFBUTTON4 =
0x00000300- MB_APPLMODAL =
0x00000000- MB_SETFOREGROUND =
0x00010000- MB_TOPMOST =
0x00040000- KEYEVENTF_EXTENDEDKEY =
0x0001- KEYEVENTF_KEYUP =
0x0002- KEYEVENTF_SILENT =
0x0004- KF_EXTENDED =
0x0100- KF_ALTDOWN =
0x2000- KF_REPEAT =
0x4000- KF_UP =
0x8000- VK_LBUTTON =
0x01- VK_RBUTTON =
0x02- VK_CANCEL =
0x03- VK_MBUTTON =
0x04- VK_BACK =
0x08- VK_TAB =
0x09- VK_CLEAR =
0x0C- VK_RETURN =
0x0D- VK_SHIFT =
0x10- VK_CONTROL =
0x11- VK_MENU =
0x12- VK_ALT =
0x12- VK_PAUSE =
0x13- VK_CAPITAL =
0x14- VK_KANA =
0x15- VK_HANGEUL =
0x15- VK_HANGUL =
0x15- VK_JUNJA =
0x17- VK_FINAL =
0x18- VK_HANJA =
0x19- VK_KANJI =
0x19- VK_ESCAPE =
0x1B- VK_CONVERT =
0x1c- VK_NOCONVERT =
0x1d- VK_SPACE =
0x20- VK_PRIOR =
0x21- VK_NEXT =
0x22- VK_END =
0x23- VK_HOME =
0x24- VK_LEFT =
0x25- VK_UP =
0x26- VK_RIGHT =
0x27- VK_DOWN =
0x28- VK_SELECT =
0x29- VK_PRINT =
0x2A- VK_EXECUTE =
0x2B- VK_SNAPSHOT =
0x2C- VK_INSERT =
0x2D- VK_DELETE =
0x2E- VK_HELP =
0x2F- VK_0 =
0x30- VK_1 =
0x31- VK_2 =
0x32- VK_3 =
0x33- VK_4 =
0x34- VK_5 =
0x35- VK_6 =
0x36- VK_7 =
0x37- VK_8 =
0x38- VK_9 =
0x39- VK_A =
-
0x3A-40
-
0x41- VK_B =
0x42- VK_C =
0x43- VK_D =
0x44- VK_E =
0x45- VK_F =
0x46- VK_G =
0x47- VK_H =
0x48- VK_I =
0x49- VK_J =
0x4A- VK_K =
0x4B- VK_L =
0x4C- VK_M =
0x4D- VK_N =
0x4E- VK_O =
0x4F- VK_P =
0x50- VK_Q =
0x51- VK_R =
0x52- VK_S =
0x53- VK_T =
0x54- VK_U =
0x55- VK_V =
0x56- VK_W =
0x57- VK_X =
0x58- VK_Y =
0x59- VK_Z =
0x5A- VK_LWIN =
0x5B- VK_RWIN =
0x5C- VK_APPS =
0x5D- VK_SLEEP =
0x5F- VK_NUMPAD0 =
0x60- VK_NUMPAD1 =
0x61- VK_NUMPAD2 =
0x62- VK_NUMPAD3 =
0x63- VK_NUMPAD4 =
0x64- VK_NUMPAD5 =
0x65- VK_NUMPAD6 =
0x66- VK_NUMPAD7 =
0x67- VK_NUMPAD8 =
0x68- VK_NUMPAD9 =
0x69- VK_MULTIPLY =
0x6A- VK_ADD =
0x6B- VK_SEPARATOR =
0x6C- VK_SUBTRACT =
0x6D- VK_DECIMAL =
0x6E- VK_DIVIDE =
0x6F- VK_F1 =
0x70- VK_F2 =
0x71- VK_F3 =
0x72- VK_F4 =
0x73- VK_F5 =
0x74- VK_F6 =
0x75- VK_F7 =
0x76- VK_F8 =
0x77- VK_F9 =
0x78- VK_F10 =
0x79- VK_F11 =
0x7A- VK_F12 =
0x7B- VK_F13 =
0x7C- VK_F14 =
0x7D- VK_F15 =
0x7E- VK_F16 =
0x7F- VK_F17 =
0x80- VK_F18 =
0x81- VK_F19 =
0x82- VK_F20 =
0x83- VK_F21 =
0x84- VK_F22 =
0x85- VK_F23 =
0x86- VK_F24 =
0x87- VK_NUMLOCK =
0x90- VK_SCROLL =
0x91- VK_LSHIFT =
0xA0- VK_RSHIFT =
0xA1- VK_LCONTROL =
0xA2- VK_RCONTROL =
0xA3- VK_LMENU =
0xA4- VK_RMENU =
0xA5- VK_EXTEND_BSLASH =
0xE2- VK_OEM_102 =
0xE2- VK_PROCESSKEY =
0xE5- VK_ATTN =
0xF6- VK_CRSEL =
0xF7- VK_EXSEL =
0xF8- VK_EREOF =
0xF9- VK_PLAY =
0xFA- VK_ZOOM =
0xFB- VK_NONAME =
0xFC- VK_PA1 =
0xFD- VK_OEM_CLEAR =
0xFE- VK_SEMICOLON =
0xBA- VK_EQUAL =
0xBB- VK_COMMA =
0xBC- VK_HYPHEN =
0xBD- VK_PERIOD =
0xBE- VK_SLASH =
0xBF- VK_BACKQUOTE =
0xC0- VK_BROWSER_BACK =
0xA6- VK_BROWSER_FORWARD =
0xA7- VK_BROWSER_REFRESH =
0xA8- VK_BROWSER_STOP =
0xA9- VK_BROWSER_SEARCH =
0xAA- VK_BROWSER_FAVORITES =
0xAB- VK_BROWSER_HOME =
0xAC- VK_VOLUME_MUTE =
0xAD- VK_VOLUME_DOWN =
0xAE- VK_VOLUME_UP =
0xAF- VK_MEDIA_NEXT_TRACK =
0xB0- VK_MEDIA_PREV_TRACK =
0xB1- VK_MEDIA_STOP =
0xB2- VK_MEDIA_PLAY_PAUSE =
0xB3- VK_LAUNCH_MAIL =
0xB4- VK_LAUNCH_MEDIA_SELECT =
0xB5- VK_LAUNCH_APP1 =
0xB6- VK_LAUNCH_APP2 =
0xB7- VK_LBRACKET =
0xDB- VK_BACKSLASH =
0xDC- VK_RBRACKET =
0xDD- VK_APOSTROPHE =
0xDE- VK_OFF =
0xDF- VK_DBE_ALPHANUMERIC =
0x0f0- VK_DBE_KATAKANA =
0x0f1- VK_DBE_HIRAGANA =
0x0f2- VK_DBE_SBCSCHAR =
0x0f3- VK_DBE_DBCSCHAR =
0x0f4- VK_DBE_ROMAN =
0x0f5- VK_DBE_NOROMAN =
0x0f6- VK_DBE_ENTERWORDREGISTERMODE =
0x0f7- VK_DBE_ENTERIMECONFIGMODE =
0x0f8- VK_DBE_FLUSHSTRING =
0x0f9- VK_DBE_CODEINPUT =
0x0fa- VK_DBE_NOCODEINPUT =
0x0fb- VK_DBE_DETERMINESTRING =
0x0fc- VK_DBE_ENTERDLGCONVERSIONMODE =
0x0fd- SS_LEFT =
0x00000000- SS_CENTER =
0x00000001- SS_RIGHT =
0x00000002- SS_ICON =
0x00000003- SS_LEFTNOWORDWRAP =
0x0000000C- SS_BITMAP =
0x0000000E- SS_NOPREFIX =
0x00000080- SS_CENTERIMAGE =
0x00000200- SS_NOTIFY =
0x00000100- STM_SETIMAGE =
0x0172- STM_GETIMAGE =
0x0173- BS_PUSHBUTTON =
0x00000000- BS_DEFPUSHBUTTON =
0x00000001- BS_CHECKBOX =
0x00000002- BS_AUTOCHECKBOX =
0x00000003- BS_RADIOBUTTON =
0x00000004- BS_3STATE =
0x00000005- BS_AUTO3STATE =
0x00000006- BS_GROUPBOX =
0x00000007- BS_AUTORADIOBUTTON =
0x00000009- BS_OWNERDRAW =
0x0000000B- BS_LEFTTEXT =
0x00000020- BS_TEXT =
0x00000000- BS_LEFT =
0x00000100- BS_RIGHT =
0x00000200- BS_CENTER =
0x00000300- BS_TOP =
0x00000400- BS_BOTTOM =
0x00000800- BS_VCENTER =
0x00000C00- BS_PUSHLIKE =
0x00001000- BS_MULTILINE =
0x00002000- BS_NOTIFY =
0x00004000- BM_GETCHECK =
0x00F0- BM_SETCHECK =
0x00F1- BM_GETSTATE =
0x00F2- BM_SETSTATE =
0x00F3- BM_SETSTYLE =
0x00F4- BM_CLICK =
0x00F5- BST_UNCHECKED =
0x0000- BST_CHECKED =
0x0001- BST_INDETERMINATE =
0x0002- BST_PUSHED =
0x0004- BST_FOCUS =
0x0008- ODA_DRAWENTIRE =
0x0001- ODA_SELECT =
0x0002- ODA_FOCUS =
0x0004- ODS_SELECTED =
0x0001- ODS_GRAYED =
0x0002- ODS_DISABLED =
0x0004- ODS_CHECKED =
0x0008- ODS_FOCUS =
0x0010- ES_LEFT =
0x0000- ES_CENTER =
0x0001- ES_RIGHT =
0x0002- ES_MULTILINE =
0x0004- ES_UPPERCASE =
0x0008- ES_LOWERCASE =
0x0010- ES_PASSWORD =
0x0020- ES_AUTOVSCROLL =
0x0040- ES_AUTOHSCROLL =
0x0080- ES_NOHIDESEL =
0x0100- ES_COMBOBOX =
0x0200- ES_OEMCONVERT =
0x0400- ES_READONLY =
0x0800- ES_WANTRETURN =
0x1000- ES_NUMBER =
0x2000- EN_SETFOCUS =
0x0100- EN_KILLFOCUS =
0x0200- EN_CHANGE =
0x0300- EN_UPDATE =
0x0400- EN_ERRSPACE =
0x0500- EN_MAXTEXT =
0x0501- EN_HSCROLL =
0x0601- EN_VSCROLL =
0x0602- EC_LEFTMARGIN =
0x0001- EC_RIGHTMARGIN =
0x0002- EC_USEFONTINFO =
0xffff- EM_GETSEL =
0x00B0- EM_SETSEL =
0x00B1- EM_GETRECT =
0x00B2- EM_SETRECT =
0x00B3- EM_SETRECTNP =
0x00B4- EM_SCROLL =
0x00B5- EM_LINESCROLL =
0x00B6- EM_SCROLLCARET =
0x00B7- EM_GETMODIFY =
0x00B8- EM_SETMODIFY =
0x00B9- EM_GETLINECOUNT =
0x00BA- EM_LINEINDEX =
0x00BB- EM_LINELENGTH =
0x00C1- EM_REPLACESEL =
0x00C2- EM_GETLINE =
0x00C4- EM_LIMITTEXT =
0x00C5- EM_CANUNDO =
0x00C6- EM_UNDO =
0x00C7- EM_FMTLINES =
0x00C8- EM_LINEFROMCHAR =
0x00C9- EM_SETTABSTOPS =
0x00CB- EM_SETPASSWORDCHAR =
0x00CC- EM_EMPTYUNDOBUFFER =
0x00CD- EM_GETFIRSTVISIBLELINE =
0x00CE- EM_SETREADONLY =
0x00CF- EM_GETPASSWORDCHAR =
0x00D2- EM_SETMARGINS =
0x00D3- EM_GETMARGINS =
0x00D4- EM_GETLIMITTEXT =
0x00D5- EM_POSFROMCHAR =
0x00D6- EM_CHARFROMPOS =
0x00D7- EM_RESERVED0x00DD =
0x00DD- EM_RESERVED0x00DE =
0x00DE- EM_RESERVED0x00E0 =
0x00E0- EM_RESERVED0x00E1 =
0x00E1- SBM_SETSCROLLINFO =
0x00E9- SBM_GETSCROLLINFO =
0x00EA- SIF_RANGE =
0x0001- SIF_PAGE =
0x0002- SIF_POS =
0x0004- SIF_DISABLENOSCROLL =
0x0008- SIF_TRACKPOS =
0x0010- SBS_HORZ =
0x0000- SBS_VERT =
0x0001- MK_LBUTTON =
0x0001- MK_RBUTTON =
0x0002- MK_SHIFT =
0x0004- MK_CONTROL =
0x0008- MK_MBUTTON =
0x0010- DS_LOCALEDIT =
0x20- DS_SETFONT =
0x40- DS_MODALFRAME =
0x80- DS_SETFOREGROUND =
0x200- DS_3DLOOK =
0x0004- DS_CONTROL =
0x0400- DS_CENTER =
0x0800- DS_NOCLOSEBTN =
0x4000- DM_RESERVED0x2 =
(WM_USER+2)
- DC_HASDEFID =
0x534B- DLGC_WANTARROWS =
0x0001- DLGC_WANTTAB =
0x0002- DLGC_WANTALLKEYS =
0x0004- DLGC_WANTMESSAGE =
0x0004- DLGC_HASSETSEL =
0x0008- DLGC_DEFPUSHBUTTON =
0x0010- DLGC_UNDEFPUSHBUTTON =
0x0020- DLGC_RADIOBUTTON =
0x0040- DLGC_WANTCHARS =
0x0080- DLGC_STATIC =
0x0100- DLGC_BUTTON =
0x2000- LB_ADDSTRING =
0x0180- LB_INSERTSTRING =
0x0181- LB_DELETESTRING =
0x0182- LB_SELITEMRANGEEX =
0x0183- LB_RESETCONTENT =
0x0184- LB_SETSEL =
0x0185- LB_SETCURSEL =
0x0186- LB_GETSEL =
0x0187- LB_GETCURSEL =
0x0188- LB_GETTEXT =
0x0189- LB_GETTEXTLEN =
0x018A- LB_GETCOUNT =
0x018B- LB_SELECTSTRING =
0x018C- LB_GETTOPINDEX =
0x018E- LB_FINDSTRING =
0x018F- LB_GETSELCOUNT =
0x0190- LB_GETSELITEMS =
0x0191- LB_SETTABSTOPS =
0x0192- LB_GETHORIZONTALEXTENT =
0x0193- LB_SETHORIZONTALEXTENT =
0x0194- LB_SETCOLUMNWIDTH =
0x0195- LB_SETTOPINDEX =
0x0197- LB_GETITEMRECT =
0x0198- LB_GETITEMDATA =
0x0199- LB_SETITEMDATA =
0x019A- LB_SELITEMRANGE =
0x019B- LB_SETANCHORINDEX =
0x019C- LB_GETANCHORINDEX =
0x019D- LB_SETCARETINDEX =
0x019E- LB_GETCARETINDEX =
0x019F- LB_SETITEMHEIGHT =
0x01A0- LB_GETITEMHEIGHT =
0x01A1- LB_FINDSTRINGEXACT =
0x01A2- LB_SETLOCALE =
0x01A5- LB_GETLOCALE =
0x01A6- LB_INITSTORAGE =
0x01A8- LB_ITEMFROMPOINT =
0x01A9- LB_RESERVED0x01C0 =
0x01C0- LB_RESERVED0x01C1 =
0x01C1- LB_MSGMAX =
LB_MSGMAX = 0x01C9
0x01A8- LBS_NOTIFY =
0x0001- LBS_SORT =
0x0002- LBS_NOREDRAW =
0x0004- LBS_MULTIPLESEL =
0x0008- LBS_HASSTRINGS =
0x0040- LBS_USETABSTOPS =
0x0080- LBS_NOINTEGRALHEIGHT =
0x0100- LBS_MULTICOLUMN =
0x0200- LBS_WANTKEYBOARDINPUT =
0x0400- LBS_EXTENDEDSEL =
0x0800- LBS_DISABLENOSCROLL =
0x1000- LBS_NODATA =
0x2000- LBS_NOSEL =
0x4000- LBS_EX_CONSTSTRINGDATA =
0x00000002- CBS_DROPDOWN =
0x0002- CBS_DROPDOWNLIST =
0x0003- CBS_AUTOHSCROLL =
0x0040- CBS_OEMCONVERT =
0x0080- CBS_SORT =
0x0100- CBS_HASSTRINGS =
0x0200- CBS_NOINTEGRALHEIGHT =
0x0400- CBS_DISABLENOSCROLL =
0x0800- CBS_UPPERCASE =
0x2000- CBS_LOWERCASE =
0x4000- CBS_EX_CONSTSTRINGDATA =
0x00000002- CB_GETEDITSEL =
0x0140- CB_LIMITTEXT =
0x0141- CB_SETEDITSEL =
0x0142- CB_ADDSTRING =
0x0143- CB_DELETESTRING =
0x0144- CB_GETCOUNT =
0x0146- CB_GETCURSEL =
0x0147- CB_GETLBTEXT =
0x0148- CB_GETLBTEXTLEN =
0x0149- CB_INSERTSTRING =
0x014A- CB_RESETCONTENT =
0x014B- CB_FINDSTRING =
0x014C- CB_SELECTSTRING =
0x014D- CB_SETCURSEL =
0x014E- CB_SHOWDROPDOWN =
0x014F- CB_GETITEMDATA =
0x0150- CB_SETITEMDATA =
0x0151- CB_GETDROPPEDCONTROLRECT =
0x0152- CB_SETITEMHEIGHT =
0x0153- CB_GETITEMHEIGHT =
0x0154- CB_SETEXTENDEDUI =
0x0155- CB_GETEXTENDEDUI =
0x0156- CB_GETDROPPEDSTATE =
0x0157- CB_FINDSTRINGEXACT =
0x0158- CB_SETLOCALE =
0x0159- CB_GETLOCALE =
0x015A- CB_GETTOPINDEX =
0x015b- CB_SETTOPINDEX =
0x015c- CB_GETHORIZONTALEXTENT =
0x015d- CB_SETHORIZONTALEXTENT =
0x015e- CB_GETDROPPEDWIDTH =
0x015f- CB_SETDROPPEDWIDTH =
0x0160- CB_INITSTORAGE =
0x0161- CB_GETCOMBOBOXINFO =
0x0162- CB_MSGMAX =
0x0163- BDR_RAISEDOUTER =
CB_MSGMAX = 0x015B
0x0001- BDR_SUNKENOUTER =
0x0002- BDR_RAISEDINNER =
0x0004- BDR_SUNKENINNER =
0x0008- BDR_OUTER =
0x0003- BDR_INNER =
0x000C- BDR_RAISED =
0x0005- BDR_SUNKEN =
0x000A- BF_LEFT =
0x0001- BF_TOP =
0x0002- BF_RIGHT =
0x0004- BF_BOTTOM =
0x0008- BF_DIAGONAL =
0x0010- BF_MIDDLE =
0x0800- BF_SOFT =
0x1000- BF_ADJUST =
0x2000- BF_FLAT =
0x4000- BF_MONO =
0x8000- WM_HOTKEY =
0x0312- MOD_ALT =
0x0001- MOD_CONTROL =
0x0002- MOD_SHIFT =
0x0004- MOD_WIN =
0x0008- MOD_KEYUP =
0x1000- SPIF_UPDATEINIFILE =
0x0001- SPIF_SENDCHANGE =
0x0002- SPI_GETFONTSMOOTHINGCONTRAST =
0x200C- SPI_SETFONTSMOOTHINGCONTRAST =
0x200D- WM_CONTEXTMENU =
0x007B- WM_GETICON =
0x007F- WM_SETICON =
0x0080- DI_MASK =
0x0001- DI_IMAGE =
0x0002- DI_NORMAL =
0x0003- LR_DEFAULTCOLOR =
0x0000- MONITOR_DEFAULTTONULL =
0x00000000- MONITOR_DEFAULTTOPRIMARY =
0x00000001- MONITOR_DEFAULTTONEAREST =
0x00000002- MONITORINFOF_PRIMARY =
0x00000001- DISPLAY_DEVICE_ATTACHED_TO_DESKTOP =
0x00000001- DISPLAY_DEVICE_MULTI_DRIVER =
0x00000002- DISPLAY_DEVICE_PRIMARY_DEVICE =
0x00000004- DISPLAY_DEVICE_MIRRORING_DRIVER =
0x00000008- DISPLAY_DEVICE_VGA_COMPATIBLE =
0x00000010- DISPLAY_DEVICE_REMOVABLE =
0x00000020- DISPLAY_DEVICE_MODESPRUNED =
0x08000000- DISPLAY_DEVICE_REMOTE =
0x04000000- DISPLAY_DEVICE_DISCONNECT =
0x02000000- DISPLAY_DEVICE_ACTIVE =
0x00000001- DISPLAY_DEVICE_ATTACHED =
0x00000002- SETTINGCHANGE_START =
0x3001- SETTINGCHANGE_RESET =
0x3002- SETTINGCHANGE_END =
0x3003- CDS_TEST =
0x00000002- CDS_VIDEOPARAMETERS =
0x00000020- CDS_RESET =
0x40000000- GW_CHILD =
Others
0x05- TCM_FIRST =
0x1300- TCM_SETCURSEL =
TCM_FIRST + 12
- TCM_SETCURFOCUS =
TCM_FIRST + 48
- CCM_FIRST =
Common control shared messages
0x2000- CCM_LAST =
(CCM_FIRST + 0x200)
- CCM_SETBKCOLOR =
lParam is bkColor
(CCM_FIRST + 1)
- CCM_SETCOLORSCHEME =
lParam is color scheme
(CCM_FIRST + 2)
- CCM_GETCOLORSCHEME =
fills in COLORSCHEME pointed to by lParam
(CCM_FIRST + 3)
- CCM_GETDROPTARGET =
(CCM_FIRST + 4)
- CCM_SETUNICODEFORMAT =
(CCM_FIRST + 5)
- CCM_GETUNICODEFORMAT =
(CCM_FIRST + 6)
- CCM_SETVERSION =
(CCM_FIRST + 0x7)
- CCM_GETVERSION =
(CCM_FIRST + 0x8)
- CCM_SETNOTIFYWINDOW =
wParam == hwndParent.
(CCM_FIRST + 0x9)
- CCM_SETWINDOWTHEME =
(CCM_FIRST + 0xb)
- CCM_DPISCALE =
wParam == Awareness
(CCM_FIRST + 0xc)
- LVM_FIRST =
ListView messages
0x1000- LVM_SETUNICODEFORMAT =
CCM_SETUNICODEFORMAT- LVM_GETUNICODEFORMAT =
CCM_GETUNICODEFORMAT- LVM_GETBKCOLOR =
(LVM_FIRST + 0)
- LVM_SETBKCOLOR =
(LVM_FIRST + 1)
- LVM_GETIMAGELIST =
(LVM_FIRST + 2)
- LVM_SETIMAGELIST =
(LVM_FIRST + 3)
- LVM_GETITEMCOUNT =
(LVM_FIRST + 4)
- LVM_GETITEMA =
(LVM_FIRST + 5)
- LVM_GETITEMW =
(LVM_FIRST + 75)
- LVM_GETITEM =
LVM_GETITEMA- LVM_SETITEMA =
(LVM_FIRST + 6)
- LVM_SETITEMW =
(LVM_FIRST + 76)
- LVM_SETITEM =
LVM_SETITEMA- LVM_INSERTITEMA =
(LVM_FIRST + 7)
- LVM_INSERTITEMW =
(LVM_FIRST + 77)
- LVM_INSERTITEM =
LVM_INSERTITEMA- LVM_DELETEITEM =
(LVM_FIRST + 8)
- LVM_DELETEALLITEMS =
(LVM_FIRST + 9)
- LVM_GETCALLBACKMASK =
(LVM_FIRST + 10)
- LVM_SETCALLBACKMASK =
(LVM_FIRST + 11)
- LVM_GETNEXTITEM =
(LVM_FIRST + 12)
- LVM_FINDITEMA =
(LVM_FIRST + 13)
- LVM_FINDITEMW =
(LVM_FIRST + 83)
- LVM_FINDITEM =
LVM_FINDITEMA- LVM_GETITEMRECT =
(LVM_FIRST + 14)
- LVM_SETITEMPOSITION =
(LVM_FIRST + 15)
- LVM_GETITEMPOSITION =
(LVM_FIRST + 16)
- LVM_GETSTRINGWIDTHA =
(LVM_FIRST + 17)
- LVM_GETSTRINGWIDTHW =
(LVM_FIRST + 87)
- LVM_GETSTRINGWIDTH =
LVM_GETSTRINGWIDTHA- LVM_HITTEST =
(LVM_FIRST + 18)
- LVM_ENSUREVISIBLE =
(LVM_FIRST + 19)
- LVM_SCROLL =
(LVM_FIRST + 20)
- LVM_REDRAWITEMS =
(LVM_FIRST + 21)
- LVM_ARRANGE =
(LVM_FIRST + 22)
- LVM_EDITLABELA =
(LVM_FIRST + 23)
- LVM_EDITLABELW =
(LVM_FIRST + 118)
- LVM_EDITLABEL =
LVM_EDITLABELA- LVM_GETEDITCONTROL =
(LVM_FIRST + 24)
- LVM_GETCOLUMNA =
(LVM_FIRST + 25)
- LVM_GETCOLUMNW =
(LVM_FIRST + 95)
- LVM_GETCOLUMN =
LVM_GETCOLUMNA- LVM_SETCOLUMNA =
(LVM_FIRST + 26)
- LVM_SETCOLUMNW =
(LVM_FIRST + 96)
- LVM_SETCOLUMN =
LVM_SETCOLUMNW- LVM_INSERTCOLUMNA =
(LVM_FIRST + 27)
- LVM_INSERTCOLUMNW =
(LVM_FIRST + 97)
- LVM_DELETECOLUMN =
(LVM_FIRST + 28)
- LVM_GETCOLUMNWIDTH =
(LVM_FIRST + 29)
- LVM_SETCOLUMNWIDTH =
(LVM_FIRST + 30)
- LVM_GETHEADER =
(LVM_FIRST + 31)
- LVM_CREATEDRAGIMAGE =
(LVM_FIRST + 33)
- LVM_GETVIEWRECT =
(LVM_FIRST + 34)
- LVM_GETTEXTCOLOR =
(LVM_FIRST + 35)
- LVM_SETTEXTCOLOR =
(LVM_FIRST + 36)
- LVM_GETTEXTBKCOLOR =
(LVM_FIRST + 37)
- LVM_SETTEXTBKCOLOR =
(LVM_FIRST + 38)
- LVM_GETTOPINDEX =
(LVM_FIRST + 39)
- LVM_GETCOUNTPERPAGE =
(LVM_FIRST + 40)
- LVM_GETORIGIN =
(LVM_FIRST + 41)
- LVM_UPDATE =
(LVM_FIRST + 42)
- LVM_SETITEMSTATE =
(LVM_FIRST + 43)
- LVM_GETITEMSTATE =
(LVM_FIRST + 44)
- LVM_GETITEMTEXTA =
(LVM_FIRST + 45)
- LVM_GETITEMTEXTW =
(LVM_FIRST + 115)
- LVM_GETITEMTEXT =
LVM_GETITEMTEXTA- LVM_SETITEMTEXTA =
(LVM_FIRST + 46)
- LVM_SETITEMTEXTW =
(LVM_FIRST + 116)
- LVM_SETITEMTEXT =
LVM_SETITEMTEXTA- LVM_SETITEMCOUNT =
(LVM_FIRST + 47)
- LVM_SORTITEMS =
(LVM_FIRST + 48)
- LVM_SETITEMPOSITION32 =
(LVM_FIRST + 49)
- LVM_GETSELECTEDCOUNT =
(LVM_FIRST + 50)
- LVM_GETITEMSPACING =
(LVM_FIRST + 51)
- LVM_GETISEARCHSTRINGA =
(LVM_FIRST + 52)
- LVM_GETISEARCHSTRINGW =
(LVM_FIRST + 117)
- LVM_GETISEARCHSTRING =
LVM_GETISEARCHSTRINGA- LVM_SETICONSPACING =
(LVM_FIRST + 53)
- LVM_SETEXTENDEDLISTVIEWSTYLE =
optional wParam == mask
(LVM_FIRST + 54)
- LVM_GETEXTENDEDLISTVIEWSTYLE =
(LVM_FIRST + 55)
- LVM_GETSUBITEMRECT =
(LVM_FIRST + 56)
- LVM_SUBITEMHITTEST =
(LVM_FIRST + 57)
- LVM_SETCOLUMNORDERARRAY =
(LVM_FIRST + 58)
- LVM_GETCOLUMNORDERARRAY =
(LVM_FIRST + 59)
- LVM_SETHOTITEM =
(LVM_FIRST + 60)
- LVM_GETHOTITEM =
(LVM_FIRST + 61)
- LVM_SETHOTCURSOR =
(LVM_FIRST + 62)
- LVM_GETHOTCURSOR =
(LVM_FIRST + 63)
- LVM_APPROXIMATEVIEWRECT =
(LVM_FIRST + 64)
- LVM_SETWORKAREAS =
(LVM_FIRST + 65)
- LVM_GETWORKAREAS =
(LVM_FIRST + 70)
- LVM_GETNUMBEROFWORKAREAS =
(LVM_FIRST + 73)
- LVM_GETSELECTIONMARK =
(LVM_FIRST + 66)
- LVM_SETSELECTIONMARK =
(LVM_FIRST + 67)
- LVM_SETHOVERTIME =
(LVM_FIRST + 71)
- LVM_GETHOVERTIME =
(LVM_FIRST + 72)
- LVM_SETTOOLTIPS =
(LVM_FIRST + 74)
- LVM_GETTOOLTIPS =
(LVM_FIRST + 78)
- LVM_SORTITEMSEX =
(LVM_FIRST + 81)
- LVM_SETBKIMAGEA =
(LVM_FIRST + 68)
- LVM_SETBKIMAGEW =
(LVM_FIRST + 138)
- LVM_GETBKIMAGEA =
(LVM_FIRST + 69)
- LVM_GETBKIMAGEW =
(LVM_FIRST + 139)
- LVM_SETSELECTEDCOLUMN =
(LVM_FIRST + 140)
- LVM_SETTILEWIDTH =
(LVM_FIRST + 141)
- LVM_SETVIEW =
(LVM_FIRST + 142)
- LVM_GETVIEW =
(LVM_FIRST + 143)
- LVM_INSERTGROUP =
(LVM_FIRST + 145)
- LVM_SETGROUPINFO =
(LVM_FIRST + 147)
- LVM_GETGROUPINFO =
(LVM_FIRST + 149)
- LVM_REMOVEGROUP =
(LVM_FIRST + 150)
- LVM_MOVEGROUP =
(LVM_FIRST + 151)
- LVM_MOVEITEMTOGROUP =
(LVM_FIRST + 154)
- LVM_SETGROUPMETRICS =
(LVM_FIRST + 155)
- LVM_GETGROUPMETRICS =
(LVM_FIRST + 156)
- LVM_ENABLEGROUPVIEW =
(LVM_FIRST + 157)
- LVM_SORTGROUPS =
(LVM_FIRST + 158)
- LVM_INSERTGROUPSORTED =
(LVM_FIRST + 159)
- LVM_REMOVEALLGROUPS =
(LVM_FIRST + 160)
- LVM_HASGROUP =
(LVM_FIRST + 161)
- LVM_SETTILEVIEWINFO =
(LVM_FIRST + 162)
- LVM_GETTILEVIEWINFO =
(LVM_FIRST + 163)
- LVM_SETTILEINFO =
(LVM_FIRST + 164)
- LVM_GETTILEINFO =
(LVM_FIRST + 165)
- LVM_SETINSERTMARK =
(LVM_FIRST + 166)
- LVM_GETINSERTMARK =
(LVM_FIRST + 167)
- LVM_INSERTMARKHITTEST =
(LVM_FIRST + 168)
- LVM_GETINSERTMARKRECT =
(LVM_FIRST + 169)
- LVM_SETINSERTMARKCOLOR =
(LVM_FIRST + 170)
- LVM_GETINSERTMARKCOLOR =
(LVM_FIRST + 171)
- LVM_SETINFOTIP =
(LVM_FIRST + 173)
- LVM_GETSELECTEDCOLUMN =
(LVM_FIRST + 174)
- LVM_ISGROUPVIEWENABLED =
(LVM_FIRST + 175)
- LVM_GETOUTLINECOLOR =
(LVM_FIRST + 176)
- LVM_SETOUTLINECOLOR =
(LVM_FIRST + 177)
- LVM_CANCELEDITLABEL =
(LVM_FIRST + 179)
- LVM_MAPINDEXTOID =
(LVM_FIRST + 180)
- LVM_MAPIDTOINDEX =
(LVM_FIRST + 181)
- LVM_SETBKIMAGE =
LVM_SETBKIMAGEA- LVM_GETBKIMAGE =
LVM_GETBKIMAGEA- SW_HIDE =
0- SW_SHOWNORMAL =
1- SW_NORMAL =
1- SW_SHOWMINIMIZED =
2- SW_SHOWMAXIMIZED =
3- SW_MAXIMIZE =
3- SW_SHOWNOACTIVATE =
4- SW_SHOW =
5- SW_MINIMIZE =
6- SW_SHOWMINNOACTIVE =
7- SW_SHOWNA =
8- SW_RESTORE =
9- SW_SHOWDEFAULT =
10- SW_FORCEMINIMIZE =
11- SW_MAX =
11- SW_PARENTCLOSING =
1- SW_OTHERZOOM =
2- SW_PARENTOPENING =
3- SW_OTHERUNZOOM =
4- SW_SCROLLCHILDREN =
Scroll children within *lprcScroll.
0x0001- SW_INVALIDATE =
Invalidate after scrolling
0x0002- SW_ERASE =
If SW_INVALIDATE, don’t send WM_ERASEBACKGROUND
0x0004- SW_SMOOTHSCROLL =
Use smooth scrolling
0x0010
Instance Method Summary collapse
-
#kb_event(v_key, event, hw_scan_code = 0x0, extra_info = 0) ⇒ Object
Wrapper for
keydb_event. -
#key_down(v_key, scan_code = 0x0) ⇒ Object
Simulates key down event.
-
#key_press(v_key, scan_code = 0x0) ⇒ Object
Simulates key press and release.
-
#key_up(v_key, scan_code = 0x0) ⇒ Object
Simulates key down event.
-
#keys_down(v_keys) ⇒ Object
Simulates a sequence of keys being pressed, but not released.
-
#keys_up(v_keys) ⇒ Object
Simulates a sequence of keys being released.
-
#mouse_click ⇒ Object
Simulates a mouse click by pressing and releasing the left mouse button.
-
#post_message(hwnd, message, w_param, l_param) ⇒ Object
Wrapper for
PostMessage. -
#send_message(hwnd, message, w_param, l_param) ⇒ Object
Wrapper for
SendMessage. -
#set_cursor_pos(x, y) ⇒ Object
Wrapper for
SetCursorPos. -
#user32(name, param_type, return_value) ⇒ Object
- Wrap the API call to functions in ‘user32.dll’ so we don’t have to call
API.new 'user32' ...repeatedlyname - Name of the Win32 function to be called
param_type - Array of parameter type hints
return_value -
Type hint for the return value Example:
user32 'FindWindow', ['P', 'P'], 'L'=> calls the FindWindow function.
- Array of parameter type hints
- Name of the Win32 function to be called
- Wrap the API call to functions in ‘user32.dll’ so we don’t have to call
Instance Method Details
#kb_event(v_key, event, hw_scan_code = 0x0, extra_info = 0) ⇒ Object
Wrapper for keydb_event.
v_key-
virtual key code from msdn.microsoft.com/en-us/library/ms645540(VS.85).aspx
event-
type of event: KEYEVENTF_KEYDOWN or KEYEVENTF_KEYUP
hw_scan_code-
not used
extra_info-
not used
- Return
-
none
84 85 86 87 88 |
# File 'lib/winapisys.rb', line 84 def kb_event(v_key, event, hw_scan_code = 0x0, extra_info = 0) kbe = user32 'keybd_event', %w{I I L L}, 'V' kbe.call v_key, hw_scan_code, event, extra_info sleep 0.05 end |
#key_down(v_key, scan_code = 0x0) ⇒ Object
Simulates key down event
96 97 98 |
# File 'lib/winapisys.rb', line 96 def key_down(v_key, scan_code = 0x0) kb_event v_key, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYDOWN, scan_code end |
#key_press(v_key, scan_code = 0x0) ⇒ Object
Simulates key press and release
101 102 103 104 |
# File 'lib/winapisys.rb', line 101 def key_press(v_key, scan_code = 0x0) kb_event v_key, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYDOWN, scan_code kb_event v_key, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, scan_code end |
#key_up(v_key, scan_code = 0x0) ⇒ Object
Simulates key down event
91 92 93 |
# File 'lib/winapisys.rb', line 91 def key_up(v_key, scan_code = 0x0) kb_event v_key, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, scan_code end |
#keys_down(v_keys) ⇒ Object
Simulates a sequence of keys being pressed, but not released
107 108 109 110 |
# File 'lib/winapisys.rb', line 107 def keys_down(v_keys) raise if !v_keys.is_a?(Array) v_keys.each{|k| key_down k} end |
#keys_up(v_keys) ⇒ Object
Simulates a sequence of keys being released
113 114 115 116 |
# File 'lib/winapisys.rb', line 113 def keys_up(v_keys) raise if !v_keys.is_a?(Array) v_keys.each{|k| key_up k} end |
#mouse_click ⇒ Object
Simulates a mouse click by pressing and releasing the left mouse button
68 69 70 71 72 73 |
# File 'lib/winapisys.rb', line 68 def mouse_click me = user32 'mouse_event', 'LLLLL', 'V' me.call MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 me.call MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 end |
#post_message(hwnd, message, w_param, l_param) ⇒ Object
Wrapper for PostMessage.
hwnd-
Handle to the window we’re sending the message to
message-
message to send
w_param-
message specific information
l_param-
more message specific information
42 43 44 45 |
# File 'lib/winapisys.rb', line 42 def (hwnd, , w_param, l_param) pm = user32 'PostMessage', 'LLLL', 'L' pm.call hwnd, , w_param, l_param end |
#send_message(hwnd, message, w_param, l_param) ⇒ Object
Wrapper for SendMessage.
hwnd-
Handle to the window we’re sending the message to
message-
message to send
w_param-
message specific information
l_param-
more message specific information
52 53 54 55 |
# File 'lib/winapisys.rb', line 52 def (hwnd, , w_param, l_param) pm = user32 'SendMessage', 'LLLP', 'L' pm.call hwnd, , w_param, l_param end |
#set_cursor_pos(x, y) ⇒ Object
Wrapper for SetCursorPos.
x-
x position
y-
y position
- Return
-
nonzero if successful or zero otherwise
61 62 63 64 65 |
# File 'lib/winapisys.rb', line 61 def set_cursor_pos(x, y) s = user32 'SetCursorPos', 'LL', 'I' s.call x, y end |
#user32(name, param_type, return_value) ⇒ Object
Wrap the API call to functions in ‘user32.dll’ so we don’t have to call API.new 'user32' ... repeatedly
name-
Name of the Win32 function to be called
param_type-
Array of parameter type hints
return_value-
Type hint for the return value
Example: user32 'FindWindow', ['P', 'P'], 'L'
> calls the FindWindow function
33 34 35 |
# File 'lib/winapisys.rb', line 33 def user32(name, param_type, return_value) API.new name, param_type, return_value, 'user32' end |