c#中调用windows api (按键精灵)
2016-03-19 23:09
375 查看
调用windows api要添加命名空间 using System.Runtime.InteropServices;先声明调用函数(函数前要添加)
[/code]在使用的地方可以直接调用mouse_event(,,,);
MouseEventFlag 的枚举:
[/code]其中添加Absolute之后dx dy 变为相对坐标
键盘操作类似:
[/code]调用位置
[/code]
组合按键:
//对dwFlags,KEYEVENTF_KEYUP 表示弹起,0按下,KEYEVENTF_EXTENDEDKEY表示一次单机()
(? 0表示按下 2 表示抬起)
[/code]
另一种
keybd_event(key.controlkey,0,0,0);
keybd_envet(key.C,0,0,0);
keybd_event(key.controlKey,0,2,0);
keybd_event(key.C,0,2,0);
[/code]
键盘按键枚举:
[DllImport("user32.dll")]
static extern void mouse_event(MouseEventFlag flags, int dx, int dy, uint data, UIntPtr extraLnfo);
[/code]在使用的地方可以直接调用mouse_event(,,,);
MouseEventFlag 的枚举:
public enum MouseEventFlag : uint {
Move = 0x0001,
LeftDown = 0x0002,
LeftUp = 0x0004,
RightDown = 0x0080,
RightUp = 0x0010,
MiddleDown = 0x0020,
MiddleUp = 0x0040,
XDown = 0x0080,
XUp = 0x0100,
Wheel = 0x0800,
VirtualDesk = 0x4000,
Absolute = 0x8000
}
[/code]其中添加Absolute之后dx dy 变为相对坐标
键盘操作类似:
[DllImport("user32.dll")]
static extern void keybd_event(byte bVK,int Bscan,int dwFlags,int dwExtraInfo);
[/code]调用位置
keybd_event((byte)(67), 0, 0, 0);
[/code]
组合按键:
[DllImport("user32.dll")]
private static extern void keybd_event(byte bVk, byte bSCan, int dwFlags, int dwExtraInfo);
//对dwFlags,KEYEVENTF_KEYUP 表示弹起,0按下,KEYEVENTF_EXTENDEDKEY表示一次单机()
(? 0表示按下 2 表示抬起)
[/code]
//模拟实现Ctrl+O操作
keybd(code,0,0,0);
keybd_event(byte(0),0,KEYEVENTF_EXRENDEDKEY,0)
keybd_event(key,0,KEYEVENTF_KEYUP,0); //中间位置为
1
1
另一种
keybd_event(key.controlkey,0,0,0);
keybd_envet(key.C,0,0,0);
keybd_event(key.controlKey,0,2,0);
keybd_event(key.C,0,2,0);
[/code]
键盘按键枚举:
/// <summary>
/// 虚拟按键代码
/// 参考于 http://msdn.microsoft.com/zh-cn/library/dd375731(v=vs.85).aspx[/code]/// </summary>public enum VirtualKeyCode{/// <summary>/// Left mouse button/// </summary>Left_mouse_button = 0x01,/// <summary>/// Right mouse button/// </summary>Right_mouse_button = 0x02,/// <summary>/// Control-break processing/// </summary>Control_break_processing = 0x03,/// <summary>/// Middle mouse button (three-button mouse)/// </summary>Middle_mouse_button = 0x04,/// <summary>/// X1 mouse button/// </summary>X1_mouse_button = 0x05,/// <summary>/// X2 mouse button/// </summary>X2_mouse_button = 0x06,/// <summary>/// Undefined/// </summary>Undefined1 = 0x07,/// <summary>/// BACKSPACE key/// </summary>BACKSPACE_key = 0x08,/// <summary>/// TAB key/// </summary>TAB_key = 0x09,/// <summary>/// CLEAR key/// </summary>CLEAR_key = 0x0C,/// <summary>/// ENTER key/// </summary>ENTER_key = 0x0D,/// <summary>/// SHIFT key/// </summary>SHIFT_key = 0x10,/// <summary>/// CTRL key/// </summary>CTRL_key = 0x11,/// <summary>/// ALT key/// </summary>ALT_key = 0x12,/// <summary>/// PAUSE key/// </summary>PAUSE_key = 0x13,/// <summary>/// CAPS LOCK key/// </summary>CAPS_LOCK_key = 0x14,/// <summary>/// IME Kana mode/// </summary>IME_Kana_mode = 0x15,/// <summary>/// IME Hanguel mode (maintained for compatibility; use VK_HANGUL)/// </summary>IME_Hanguel_mode = 0x15,/// <summary>/// IME Hangul mode/// </summary>IME_Hangul_mode = 0x15,/// <summary>/// Undefined/// </summary>Undefined2 = 0x16,/// <summary>/// IME Junja mode/// </summary>IME_Junja_mode = 0x17,/// <summary>/// IME final mode/// </summary>IME_final_mode = 0x18,/// <summary>/// IME Hanja mode/// </summary>IME_Hanja_mode = 0x19,/// <summary>/// IME Kanji mode/// </summary>IME_Kanji_mode = 0x19,/// <summary>/// Undefined/// </summary>Undefined = 0x1A,/// <summary>/// ESC key/// </summary>ESC_key = 0x1B,/// <summary>/// IME convert/// </summary>IME_convert = 0x1C,/// <summary>/// IME nonconvert/// </summary>IME_nonconvert = 0x1D,/// <summary>/// IME accept/// </summary>IME_accept = 0x1E,/// <summary>/// IME mode change request/// </summary>IME_mode_change_request = 0x1F,/// <summary>/// SPACEBAR/// </summary>SPACEBAR = 0x20,/// <summary>/// PAGE UP key/// </summary>PAGE_UP_key = 0x21,/// <summary>/// PAGE DOWN key/// </summary>PAGE_DOWN_key = 0x22,/// <summary>/// END key/// </summary>END_key = 0x23,/// <summary>/// HOME key/// </summary>HOME_key = 0x24,/// <summary>/// LEFT ARROW key/// </summary>LEFT_ARROW_key = 0x25,/// <summary>/// UP ARROW key/// </summary>UP_ARROW_key = 0x26,/// <summary>/// RIGHT ARROW key/// </summary>RIGHT_ARROW_key = 0x27,/// <summary>/// DOWN ARROW key/// </summary>DOWN_ARROW_key = 0x28,/// <summary>/// SELECT key/// </summary>SELECT_key = 0x29,/// <summary>/// PRINT key/// </summary>PRINT_key = 0x2A,/// <summary>/// EXECUTE key/// </summary>EXECUTE_key = 0x2B,/// <summary>/// PRINT SCREEN key/// </summary>PRINT_SCREEN_key = 0x2C,/// <summary>/// INS key/// </summary>INS_key = 0x2D,/// <summary>/// DEL key/// </summary>DEL_key = 0x2E,/// <summary>/// HELP key/// </summary>HELP_key = 0x2F,/// <summary>/// 0 key/// </summary>_0_key = 0x30,/// <summary>/// 1 key/// </summary>_1_key = 0x31,/// <summary>/// 2 key/// </summary>_2_key = 0x32,/// <summary>/// 3 key/// </summary>_3_key = 0x33,/// <summary>/// 4 key/// </summary>_4_key = 0x34,/// <summary>/// 5 key/// </summary>_5_key = 0x35,/// <summary>/// 6 key/// </summary>_6_key = 0x36,/// <summary>/// 7 key/// </summary>_7_key = 0x37,/// <summary>/// 8 key/// </summary>_8_key = 0x38,/// <summary>/// 9 key/// </summary>_9_key = 0x39,/// <summary>/// A key/// </summary>A_key = 0x41,/// <summary>/// B key/// </summary>B_key = 0x42,/// <summary>/// C key/// </summary>C_key = 0x43,/// <summary>/// D key/// </summary>D_key = 0x44,/// <summary>/// E key/// </summary>E_key = 0x45,/// <summary>/// F key/// </summary>F_key = 0x46,/// <summary>/// G key/// </summary>G_key = 0x47,/// <summary>/// H key/// </summary>H_key = 0x48,/// <summary>/// I key/// </summary>I_key = 0x49,/// <summary>/// J key/// </summary>J_key = 0x4A,/// <summary>/// K key/// </summary>K_key = 0x4B,/// <summary>/// L key/// </summary>L_key = 0x4C,/// <summary>/// M key/// </summary>M_key = 0x4D,/// <summary>/// N key/// </summary>N_key = 0x4E,/// <summary>/// O key/// </summary>O_key = 0x4F,/// <summary>/// P key/// </summary>P_key = 0x50,/// <summary>/// Q key/// </summary>Q_key = 0x51,/// <summary>/// R key/// </summary>R_key = 0x52,/// <summary>/// S key/// </summary>S_key = 0x53,/// <summary>/// T key/// </summary>T_key = 0x54,/// <summary>/// U key/// </summary>U_key = 0x55,/// <summary>/// V key/// </summary>V_key = 0x56,/// <summary>/// W key/// </summary>W_key = 0x57,/// <summary>/// X key/// </summary>X_key = 0x58,/// <summary>/// Y key/// </summary>Y_key = 0x59,/// <summary>/// Z key/// </summary>Z_key = 0x5A,/// <summary>/// Left Windows key (Natural keyboard)/// </summary>Left_Windows_key = 0x5B,/// <summary>/// Right Windows key (Natural keyboard)/// </summary>Right_Windows_key = 0x5C,/// <summary>/// Applications key (Natural keyboard)/// </summary>Applications_key = 0x5D,/// <summary>/// Reserved/// </summary>Reserved1 = 0x5E,/// <summary>/// Computer Sleep key/// </summary>Computer_Sleep_key = 0x5F,/// <summary>/// Numeric keypad 0 key/// </summary>Numeric_keypad_0_key = 0x60,/// <summary>/// Numeric keypad 1 key/// </summary>Numeric_keypad_1_key = 0x61,/// <summary>/// Numeric keypad 2 key/// </summary>Numeric_keypad_2_key = 0x62,/// <summary>/// Numeric keypad 3 key/// </summary>Numeric_keypad_3_key = 0x63,/// <summary>/// Numeric keypad 4 key/// </summary>Numeric_keypad_4_key = 0x64,/// <summary>/// Numeric keypad 5 key/// </summary>Numeric_keypad_5_key = 0x65,/// <summary>/// Numeric keypad 6 key/// </summary>Numeric_keypad_6_key = 0x66,/// <summary>/// Numeric keypad 7 key/// </summary>Numeric_keypad_7_key = 0x67,/// <summary>/// Numeric keypad 8 key/// </summary>Numeric_keypad_8_key = 0x68,/// <summary>/// Numeric keypad 9 key/// </summary>Numeric_keypad_9_key = 0x69,/// <summary>/// Multiply key/// </summary>Multiply_key = 0x6A,/// <summary>/// Add key/// </summary>Add_key = 0x6B,/// <summary>/// Separator key/// </summary>Separator_key = 0x6C,/// <summary>/// Subtract key/// </summary>Subtract_key = 0x6D,/// <summary>/// Decimal key/// </summary>Decimal_key = 0x6E,/// <summary>/// Divide key/// </summary>Divide_key = 0x6F,/// <summary>/// F1 key/// </summary>F1_key = 0x70,/// <summary>/// F2 key/// </summary>F2_key = 0x71,/// <summary>/// F3 key/// </summary>F3_key = 0x72,/// <summary>/// F4 key/// </summary>F4_key = 0x73,/// <summary>/// F5 key/// </summary>F5_key = 0x74,/// <summary>/// F6 key/// </summary>F6_key = 0x75,/// <summary>/// F7 key/// </summary>F7_key = 0x76,/// <summary>/// F8 key/// </summary>F8_key = 0x77,/// <summary>/// F9 key/// </summary>F9_key = 0x78,/// <summary>/// F10 key/// </summary>F10_key = 0x79,/// <summary>/// F11 key/// </summary>F11_key = 0x7A,/// <summary>/// F12 key/// </summary>F12_key = 0x7B,/// <summary>/// F13 key/// </summary>F13_key = 0x7C,/// <summary>/// F14 key/// </summary>F14_key = 0x7D,/// <summary>/// F15 key/// </summary>F15_key = 0x7E,/// <summary>/// F16 key/// </summary>F16_key = 0x7F,/// <summary>/// F17 key/// </summary>F17_key = 0x80,/// <summary>/// F18 key/// </summary>F18_key = 0x81,/// <summary>/// F19 key/// </summary>F19_key = 0x82,/// <summary>/// F20 key/// </summary>F20_key = 0x83,/// <summary>/// F21 key/// </summary>F21_key = 0x84,/// <summary>/// F22 key/// </summary>F22_key = 0x85,/// <summary>/// F23 key/// </summary>F23_key = 0x86,/// <summary>/// F24 key/// </summary>F24_key = 0x87,/// <summary>/// NUM LOCK key/// </summary>NUM_LOCK_key = 0x90,/// <summary>/// SCROLL LOCK key/// </summary>SCROLL_LOCK_key = 0x91,/// <summary>/// Left SHIFT key/// </summary>Left_SHIFT_key = 0xA0,/// <summary>/// Right SHIFT key/// </summary>Right_SHIFT_key = 0xA1,/// <summary>/// Left CONTROL key/// </summary>Left_CONTROL_key = 0xA2,/// <summary>/// Right CONTROL key/// </summary>Right_CONTROL_key = 0xA3,/// <summary>/// Left MENU key/// </summary>Left_MENU_key = 0xA4,/// <summary>/// Right MENU key/// </summary>Right_MENU_key = 0xA5,/// <summary>/// Browser Back key/// </summary>Browser_Back_key = 0xA6,/// <summary>/// Browser Forward key/// </summary>Browser_Forward_key = 0xA7,/// <summary>/// Browser Refresh key/// </summary>Browser_Refresh_key = 0xA8,/// <summary>/// Browser Stop key/// </summary>Browser_Stop_key = 0xA9,/// <summary>/// Browser Search key/// </summary>Browser_Search_key = 0xAA,/// <summary>/// Browser Favorites key/// </summary>Browser_Favorites_key = 0xAB,/// <summary>/// Browser Start and Home key/// </summary>Browser_Start_and_Home_key = 0xAC,/// <summary>/// Volume Mute key/// </summary>Volume_Mute_key = 0xAD,/// <summary>/// Volume Down key/// </summary>Volume_Down_key = 0xAE,/// <summary>/// Volume Up key/// </summary>Volume_Up_key = 0xAF,/// <summary>/// Next Track key/// </summary>Next_Track_key = 0xB0,/// <summary>/// Previous Track key/// </summary>Previous_Track_key = 0xB1,/// <summary>/// Stop Media key/// </summary>Stop_Media_key = 0xB2,/// <summary>/// Play/Pause Media key/// </summary>Play_Or_Pause_Media_key = 0xB3,/// <summary>/// Start Mail key/// </summary>Start_Mail_key = 0xB4,/// <summary>/// Select Media key/// </summary>Select_Media_key = 0xB5,/// <summary>/// Start Application 1 key/// </summary>Start_Application_1_key = 0xB6,/// <summary>/// Start Application 2 key/// </summary>Start_Application_2_key = 0xB7,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters1 = 0xBA,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters2 = 0xBF,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters3 = 0xC0,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters4 = 0xDB,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters5 = 0xDC,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters6 = 0xDD,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters7 = 0xDE,/// <summary>/// Used for miscellaneous characters; it can vary by keyboard./// </summary>Used_for_miscellaneous_characters8 = 0xDF,/// <summary>/// Reserved/// </summary>Reserved2 = 0xE0,/// <summary>/// OEM specific/// </summary>OEM_specific1 = 0xE1,/// <summary>/// Either the angle bracket key or the backslash key on the RT 102-key keyboard/// </summary>Either_the_angle_bracket_key_or_the_backslash_key_on_the_RT_102_key_keyboard = 0xE2,/// <summary>/// IME PROCESS key/// </summary>IME_PROCESS_key = 0xE5,/// <summary>/// OEM specific/// </summary>OEM_specific2 = 0xE6,/// <summary>/// Used to pass Unicode characters as if they were keystrokes. The VK_PACKET key is the low word of a 32-bit Virtual Key value used for non-keyboard input methods. For more information, see Remark in KEYBDINPUT, SendInput, WM_KEYDOWN, and WM_KEYUP/// </summary>Used_to_pass_Unicode_characters_as_if_they_were_keystrokes = 0xE7,/// <summary>/// Unassigned/// </summary>Unassigned = 0xE8,/// <summary>/// Attn key/// </summary>Attn_key = 0xF6,/// <summary>/// CrSel key/// </summary>CrSel_key = 0xF7,/// <summary>/// ExSel key/// </summary>ExSel_key = 0xF8,/// <summary>/// Erase EOF key/// </summary>Erase_EOF_key = 0xF9,/// <summary>/// Play key/// </summary>Play_key = 0xFA,/// <summary>/// Zoom key/// </summary>Zoom_key = 0xFB,/// <summary>/// Reserved/// </summary>Reserved = 0xFC,/// <summary>/// PA1 key/// </summary>PA1_key = 0xFD,/// <summary>/// Clear key/// </summary>Clear_key = 0xFE}
[/code]
来自为知笔记(Wiz)
相关文章推荐
- C# 委托 代理
- 基于C#的单元测试(VS2015)
- C# kinect v2学习笔记(三)红外图像展示
- C#中使用TeeChart控件出现 不支持无窗口的Active控件 的解决方法
- c# 委托
- C#中的FTP类
- c#程序的阅读
- 【C#】WM 消息大全
- 软件工程-构建之法 理解C#一小段程序
- 【转】【C#】SendMessage
- C#编程之神奇程序找数
- C#---抽象类与接口
- 第一个C#程序--简易计算器
- C#实现注册码功能编程总结
- c#代码分析
- C# 千分位与两位小数点
- (转)C# 温故而知新:Stream篇(七)
- C#程序分析
- (转)C# 温故而知新:Stream篇(六)
- (转)C# 温故而知新:Stream篇(五)