📄 spy.c
字号:
"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 */
NULL, /* 0x5E */
NULL, /* 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 */
NULL, /* 0x88 */
NULL, /* 0x89 */
NULL, /* 0x8A */
NULL, /* 0x8B */
NULL, /* 0x8C */
NULL, /* 0x8D */
NULL, /* 0x8E */
NULL, /* 0x8F */
"VK_NUMLOCK", /* 0x90 */
"VK_SCROLL", /* 0x91 */
NULL, /* 0x92 */
NULL, /* 0x93 */
NULL, /* 0x94 */
NULL, /* 0x95 */
NULL, /* 0x96 */
NULL, /* 0x97 */
NULL, /* 0x98 */
NULL, /* 0x99 */
NULL, /* 0x9A */
NULL, /* 0x9B */
NULL, /* 0x9C */
NULL, /* 0x9D */
NULL, /* 0x9E */
NULL, /* 0x9F */
"VK_LSHIFT", /* 0xA0 */
"VK_RSHIFT", /* 0xA1 */
"VK_LCONTROL", /* 0xA2 */
"VK_RCONTROL", /* 0xA3 */
"VK_LMENU", /* 0xA4 */
"VK_RMENU", /* 0xA5 */
NULL, /* 0xA6 */
NULL, /* 0xA7 */
NULL, /* 0xA8 */
NULL, /* 0xA9 */
NULL, /* 0xAA */
NULL, /* 0xAB */
NULL, /* 0xAC */
NULL, /* 0xAD */
NULL, /* 0xAE */
NULL, /* 0xAF */
NULL, /* 0xB0 */
NULL, /* 0xB1 */
NULL, /* 0xB2 */
NULL, /* 0xB3 */
NULL, /* 0xB4 */
NULL, /* 0xB5 */
NULL, /* 0xB6 */
NULL, /* 0xB7 */
NULL, /* 0xB8 */
NULL, /* 0xB9 */
"VK_OEM_1", /* 0xBA */
"VK_OEM_PLUS", /* 0xBB */
"VK_OEM_COMMA", /* 0xBC */
"VK_OEM_MINUS", /* 0xBD */
"VK_OEM_PERIOD", /* 0xBE */
"VK_OEM_2", /* 0xBF */
"VK_OEM_3", /* 0xC0 */
NULL, /* 0xC1 */
NULL, /* 0xC2 */
NULL, /* 0xC3 */
NULL, /* 0xC4 */
NULL, /* 0xC5 */
NULL, /* 0xC6 */
NULL, /* 0xC7 */
NULL, /* 0xC8 */
NULL, /* 0xC9 */
NULL, /* 0xCA */
NULL, /* 0xCB */
NULL, /* 0xCC */
NULL, /* 0xCD */
NULL, /* 0xCE */
NULL, /* 0xCF */
NULL, /* 0xD0 */
NULL, /* 0xD1 */
NULL, /* 0xD2 */
NULL, /* 0xD3 */
NULL, /* 0xD4 */
NULL, /* 0xD5 */
NULL, /* 0xD6 */
NULL, /* 0xD7 */
NULL, /* 0xD8 */
NULL, /* 0xD9 */
NULL, /* 0xDA */
"VK_OEM_4", /* 0xDB */
"VK_OEM_5", /* 0xDC */
"VK_OEM_6", /* 0xDD */
"VK_OEM_7", /* 0xDE */
"VK_OEM_8", /* 0xDF */
NULL, /* 0xE0 */
"VK_OEM_AX", /* 0xE1 */
"VK_OEM_102", /* 0xE2 */
"VK_ICO_HELP", /* 0xE3 */
"VK_ICO_00", /* 0xE4 */
"VK_PROCESSKEY", /* 0xE5 */
NULL, /* 0xE6 */
NULL, /* 0xE7 */
NULL, /* 0xE8 */
NULL, /* 0xE9 */
NULL, /* 0xEA */
NULL, /* 0xEB */
NULL, /* 0xEC */
NULL, /* 0xED */
NULL, /* 0xEE */
NULL, /* 0xEF */
NULL, /* 0xF0 */
NULL, /* 0xF1 */
NULL, /* 0xF2 */
NULL, /* 0xF3 */
NULL, /* 0xF4 */
NULL, /* 0xF5 */
"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 */
NULL /* 0xFF */
};
/************************************************************************/
/* WM_USER+n message values for "common controls" */
typedef struct
{
const char *name; /* name of control message */
UINT value; /* message number (0x0401-0x0fff */
UINT len; /* length of space at lParam to dump */
} USER_MSG;
typedef struct
{
const WCHAR *classname; /* class name to match */
const USER_MSG *classmsg; /* pointer to first USER_MSG for class */
const USER_MSG *lastmsg; /* pointer to last USER_MSG for class */
} CONTROL_CLASS;
#define USM(a,b) { #a ,a,b}
#define SZOF(a) sizeof(a)
/* To dump memory at the lParam for any of these messages, */
/* replace the "0" with a "SZOF(structure)", or with a */
/* number. (First method preferred.) */
#define RB_GETBANDINFO_OLD (WM_USER+5) /* obsoleted after IE3, but we have to support it anyway */
static const USER_MSG rebar_array[] = {
USM(RB_INSERTBANDA, 0),
USM(RB_DELETEBAND, 0),
USM(RB_GETBARINFO, 0),
USM(RB_SETBARINFO, 0),
USM(RB_GETBANDINFO_OLD, 0),
USM(RB_SETBANDINFOA, 0),
USM(RB_SETPARENT, 0),
USM(RB_HITTEST, 0),
USM(RB_GETRECT, 0),
USM(RB_INSERTBANDW, 0),
USM(RB_SETBANDINFOW, 0),
USM(RB_GETBANDCOUNT, 0),
USM(RB_GETROWCOUNT, 0),
USM(RB_GETROWHEIGHT, 0),
USM(RB_IDTOINDEX, 0),
USM(RB_GETTOOLTIPS, 0),
USM(RB_SETTOOLTIPS, 0),
USM(RB_SETBKCOLOR, 0),
USM(RB_GETBKCOLOR, 0),
USM(RB_SETTEXTCOLOR, 0),
USM(RB_GETTEXTCOLOR, 0),
USM(RB_SIZETORECT, 0),
USM(RB_BEGINDRAG, 0),
USM(RB_ENDDRAG, 0),
USM(RB_DRAGMOVE, 0),
USM(RB_GETBARHEIGHT, 0),
USM(RB_GETBANDINFOW, 0),
USM(RB_GETBANDINFOA, 0),
USM(RB_MINIMIZEBAND, 0),
USM(RB_MAXIMIZEBAND, 0),
USM(RB_GETBANDBORDERS, 0),
USM(RB_SHOWBAND, 0),
USM(RB_SETPALETTE, 0),
USM(RB_GETPALETTE, 0),
USM(RB_MOVEBAND, 0),
{0,0,0} };
static const USER_MSG toolbar_array[] = {
USM(TB_ENABLEBUTTON ,0),
USM(TB_CHECKBUTTON ,0),
USM(TB_PRESSBUTTON ,0),
USM(TB_HIDEBUTTON ,0),
USM(TB_INDETERMINATE ,0),
USM(TB_MARKBUTTON ,0),
USM(TB_ISBUTTONENABLED ,0),
USM(TB_ISBUTTONCHECKED ,0),
USM(TB_ISBUTTONPRESSED ,0),
USM(TB_ISBUTTONHIDDEN ,0),
USM(TB_ISBUTTONINDETERMINATE ,0),
USM(TB_ISBUTTONHIGHLIGHTED ,0),
USM(TB_SETSTATE ,0),
USM(TB_GETSTATE ,0),
USM(TB_ADDBITMAP ,0),
USM(TB_ADDBUTTONSA ,0),
USM(TB_INSERTBUTTONA ,0),
USM(TB_DELETEBUTTON ,0),
USM(TB_GETBUTTON ,0),
USM(TB_BUTTONCOUNT ,0),
USM(TB_COMMANDTOINDEX ,0),
USM(TB_SAVERESTOREA ,0),
USM(TB_CUSTOMIZE ,0),
USM(TB_ADDSTRINGA ,0),
USM(TB_GETITEMRECT ,0),
USM(TB_BUTTONSTRUCTSIZE ,0),
USM(TB_SETBUTTONSIZE ,0),
USM(TB_SETBITMAPSIZE ,0),
USM(TB_AUTOSIZE ,0),
USM(TB_GETTOOLTIPS ,0),
USM(TB_SETTOOLTIPS ,0),
USM(TB_SETPARENT ,0),
USM(TB_SETROWS ,0),
USM(TB_GETROWS ,0),
USM(TB_GETBITMAPFLAGS ,0),
USM(TB_SETCMDID ,0),
USM(TB_CHANGEBITMAP ,0),
USM(TB_GETBITMAP ,0),
USM(TB_GETBUTTONTEXTA ,0),
USM(TB_REPLACEBITMAP ,0),
USM(TB_SETINDENT ,0),
USM(TB_SETIMAGELIST ,0),
USM(TB_GETIMAGELIST ,0),
USM(TB_LOADIMAGES ,0),
USM(TB_GETRECT ,0),
USM(TB_SETHOTIMAGELIST ,0),
USM(TB_GETHOTIMAGELIST ,0),
USM(TB_SETDISABLEDIMAGELIST ,0),
USM(TB_GETDISABLEDIMAGELIST ,0),
USM(TB_SETSTYLE ,0),
USM(TB_GETSTYLE ,0),
USM(TB_GETBUTTONSIZE ,0),
USM(TB_SETBUTTONWIDTH ,0),
USM(TB_SETMAXTEXTROWS ,0),
USM(TB_GETTEXTROWS ,0),
USM(TB_GETOBJECT ,0),
USM(TB_GETBUTTONINFOW ,0),
USM(TB_SETBUTTONINFOW ,0),
USM(TB_GETBUTTONINFOA ,0),
USM(TB_SETBUTTONINFOA ,0),
USM(TB_INSERTBUTTONW ,0),
USM(TB_ADDBUTTONSW ,0),
USM(TB_HITTEST ,0),
USM(TB_SETDRAWTEXTFLAGS ,0),
USM(TB_GETHOTITEM ,0),
USM(TB_SETHOTITEM ,0),
USM(TB_SETANCHORHIGHLIGHT ,0),
USM(TB_GETANCHORHIGHLIGHT ,0),
USM(TB_GETBUTTONTEXTW ,0),
USM(TB_SAVERESTOREW ,0),
USM(TB_ADDSTRINGW ,0),
USM(TB_MAPACCELERATORA ,0),
USM(TB_GETINSERTMARK ,0),
USM(TB_SETINSERTMARK ,0),
USM(TB_INSERTMARKHITTEST ,0),
USM(TB_MOVEBUTTON ,0),
USM(TB_GETMAXSIZE ,0),
USM(TB_SETEXTENDEDSTYLE ,0),
USM(TB_GETEXTENDEDSTYLE ,0),
USM(TB_GETPADDING ,0),
USM(TB_SETPADDING ,0),
USM(TB_SETINSERTMARKCOLOR ,0),
USM(TB_GETINSERTMARKCOLOR ,0),
USM(TB_MAPACCELERATORW ,0),
USM(TB_GETSTRINGW ,0),
USM(TB_GETSTRINGA ,0),
USM(TB_UNKWN45D ,8),
USM(TB_UNKWN45E ,0),
USM(TB_UNKWN460 ,0),
USM(TB_UNKWN463 ,8),
USM(TB_UNKWN464 ,0),
{0,0,0} };
static const USER_MSG tooltips_array[] = {
USM(TTM_ACTIVATE ,0),
USM(TTM_SETDELAYTIME ,0),
USM(TTM_ADDTOOLA ,0),
USM(TTM_DELTOOLA ,0),
USM(TTM_NEWTOOLRECTA ,0),
USM(TTM_RELAYEVENT ,0),
USM(TTM_GETTOOLINFOA ,0),
USM(TTM_HITTESTA ,0),
USM(TTM_GETTEXTA ,0),
USM(TTM_UPDATETIPTEXTA ,0),
USM(TTM_GETTOOLCOUNT ,0),
USM(TTM_ENUMTOOLSA ,0),
USM(TTM_GETCURRENTTOOLA ,0),
USM(TTM_WINDOWFROMPOINT ,0),
USM(TTM_TRACKACTIVATE ,0),
USM(TTM_TRACKPOSITION ,0),
USM(TTM_SETTIPBKCOLOR ,0),
USM(TTM_SETTIPTEXTCOLOR ,0),
USM(TTM_GETDELAYTIME ,0),
USM(TTM_GETTIPBKCOLOR ,0),
USM(TTM_GETTIPTEXTCOLOR ,0),
USM(TTM_SETMAXTIPWIDTH ,0),
USM(TTM_GETMAXTIPWIDTH ,0),
USM(TTM_SETMARGIN ,0),
USM(TTM_GETMARGIN ,0),
USM(TTM_POP ,0),
USM(TTM_UPDATE ,0),
USM(TTM_GETBUBBLESIZE ,0),
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -