public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} [DllImport("USER32.DLL")]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); //导入寻找windows窗体的方法
[DllImport("USER32.DLL")]
public static extern bool SetForegroundWindow(IntPtr hWnd); //导入为windows窗体设置焦点的方法
[DllImport("USER32.DLL")]
public static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo); //导入模拟键盘的方法 private void button1_Click(object sender, EventArgs e)
{
IntPtr calculatorHandle = FindWindow(null, "aaa.txt - 记事本");
//判断是否找到了该窗体
if (calculatorHandle == IntPtr.Zero)
{
MessageBox.Show("Calculator is not running.");
return;
}
Clipboard.SetText("第三方"); SetForegroundWindow(calculatorHandle);
keybd_event(0x11, , , );
keybd_event(, , , );
keybd_event(0x11, , , );
keybd_event(, , , );
}
}

keybd_event方法的第一个参数值有:

keybd_event(0x11, 0, 0, 0)是CTRL 键 按下

keybd_event(0x11, 0, 2, 0)是CTRL 键 松开)

vbKeyLButton 0x1 鼠标左键  
vbKeyRButton 0x2 鼠标右键  
vbKeyCancel 0x3 CANCEL 键  
vbKeyMButton 0x4 鼠标中键  
vbKeyBack 0x8 BACKSPACE 键  
vbKeyTab 0x9 TAB 键  
vbKeyClear 0xC CLEAR 键  
vbKeyReturn 0xD ENTER 键  
vbKeyShift 0x10 SHIFT 键  
vbKeyControl 0x11 CTRL 键  
vbKeyMenu 0x12 MENU 键   
vbKeyPause 0x13 PAUSE 键  
vbKeyCapital 0x14 CAPS LOCK 键  
vbKeyEscape 0x1B ESC 键  
vbKeySpace 0x20 SPACEBAR 键  
vbKeyPageUp 0x21 PAGE UP 键  
vbKeyEnd 0x23 END 键  
vbKeyHome 0x24 HOME 键  
vbKeyLeft 0x25 LEFT ARROW 键  
vbKeyUp 0x26 UP ARROW 键  
vbKeyRight 0x27 RIGHT ARROW 键  
vbKeyDown 0x28 DOWN ARROW 键  
vbKeySelect 0x29 Select 键  
vbKeyPrint 0x2A PRINT SCREEN 键  
vbKeyExecute 0x2B EXECUTE 键  
vbKeySnapshot 0x2C SNAPSHOT 键  
vbKeyDelete 0x2E Delete 键  
vbKeyHelp 0x2F HELP 键  
vbKeyNumlock 0x90 NUM LOCK 键  
   
vbKeyA 65 A 键  
vbKeyB 66 B 键  
vbKeyC 67 C 键  
vbKeyD 68 D 键  
vbKeyE 69 E 键  
vbKeyF 70 F 键  
vbKeyG 71 G 键  
vbKeyH 72 H 键  
vbKeyI 73 I 键  
vbKeyJ 74 J 键  
vbKeyK 75 K 键  
vbKeyL 76 L 键  
vbKeyM 77 M 键  
vbKeyN 78 N 键  
vbKeyO 79 O 键  
vbKeyP 80 P 键  
vbKeyQ 81 Q 键  
vbKeyR 82 R 键  
vbKeyS 83 S 键  
vbKeyT 84 T 键  
vbKeyU 85 U 键  
vbKeyV 86 V 键  
vbKeyW 87 W 键  
vbKeyX 88 X 键  
vbKeyY 89 Y 键  
vbKeyZ 90 Z 键  
   
vbKey0 48 0 键  
vbKey1 49 1 键  
vbKey2 50 2 键  
vbKey3 51 3 键  
vbKey4 52 4 键  
vbKey5 53 5 键  
vbKey6 54 6 键  
vbKey7 55 7 键  
vbKey8 56 8 键  
vbKey9 57 9 键  
   
vbKeyNumpad0 0x60 0 键  
vbKeyNumpad1 0x61 1 键  
vbKeyNumpad2 0x62 2 键  
vbKeyNumpad3 0x63 3 键  
vbKeyNumpad4 0x64 4 键  
vbKeyNumpad5 0x65 5 键  
vbKeyNumpad6 0x66 6 键  
vbKeyNumpad7 0x67 7 键  
vbKeyNumpad8 0x68 8 键  
vbKeyNumpad9 0x69 9 键  
vbKeyMultiply 0x6A MULTIPLICATIONSIGN(*)键  
vbKeyAdd 0x6B PLUS SIGN (+) 键  
vbKeySeparator 0x6C ENTER 键   
vbKeySubtract 0x6D MINUS SIGN (-) 键  
vbKeyDecimal 0x6E DECIMAL POINT (.) 键  
vbKeyDivide 0x6F DIVISION SIGN (/) 键  
   
vbKeyF1 0x70 F1 键  
vbKeyF2 0x71 F2 键  
vbKeyF3 0x72 F3 键  
vbKeyF4 0x73 F4 键  
vbKeyF5 0x74 F5 键  
vbKeyF6 0x75 F6 键  
vbKeyF7 0x76 F7 键  
vbKeyF8 0x77 F8 键  
vbKeyF9 0x78 F9 键  
vbKeyF10 0x79 F10 键  
vbKeyF11 0x7A F11 键  
vbKeyF12 0x7B F12 键

C#模拟键盘事件的更多相关文章

  1. JS模拟键盘事件 -- 原理及小例子

    提问: 键盘默认事件,比如tab切换,alt+f4关闭,ctrl+t新建等,如果不想通过键盘而是一些按钮点击来触发这些功能,该咋办呢? 例子: 先以tab为例上一个小例子: <!DOCTYPE ...

  2. JavaScript 模拟键盘事件

    JavaScript 模拟键盘事件和鼠标事件(比如模拟按下回车等) 2016年09月08日 15:23:25 神秘_博士 阅读数:41158 标签: javascript鼠标键盘事件模拟更多 个人分类 ...

  3. selenium 模拟键盘事件 复制粘贴、右键、回车等

    #coding=utf-8 ''' selenium ''' from selenium import webdriver as wd import time bc=wd.Chrome(executa ...

  4. 初识 jquery.simulate.js 模拟键盘事件

    用jquery 和 jquery.simulate.js 实现模拟键盘事件,点击上下左右div相当于点击键盘的上下左右键 <!DOCTYPE html> <html> < ...

  5. 使用jquery模拟键盘事件,但window系统并不会真的响应事件,只是浏览器当前页面会响应而已

    <!DOCTYPE html> <html> <head> <title>Demo</title> <meta http-equiv= ...

  6. JavaScript 模拟键盘事件和鼠标事件(比如模拟按下回车等)

    http://blog.csdn.net/lovelyelfpop/article/details/52471878# 封装好的function大概就是这样: function fireKeyEven ...

  7. js模拟键盘事件

    <!DOCTYPE html> <html> <head lang="zh-CN"> <meta charset="UTF-8& ...

  8. JS全屏事件 模拟键盘事件F11 兼容IE

    方法1: // 全屏 //el为全屏对象 fullScreen(el) { var rfs = el.requestFullScreen || el.webkitRequestFullScreen | ...

  9. 由chrome剪贴板问题研究到了js模拟鼠标键盘事件

    写在前面 最近公司在搞浏览器兼容的事情,所有浏览器兼容的问题不得不一个人包了.下面来说一下今天遇到的一个问题吧 大家都知道IE下面如果要获得剪贴板里面的信息的话,代码应该如下所示 window.cli ...

随机推荐

  1. jQuery原生框架-----------------事件

    jQuery.extend({ // 绑定事件 addEvent: function( ele, type, fn ) { // ele不是DOM,type不是字符串,fn不是函数,打包打走 if( ...

  2. 第七篇——Mobile Apps,软件的曙光。

    作业三: ShrinkWrap (在包装盒子里面的软件,软件在CD/DVD上): Web APP (基于网页的软件): Internal Software (企业或学校或某组织内部的软件): Game ...

  3. a primary example for Functional programming in javascript

    background In pursuit of a real-world application, let’s say we need an e-commerce web applicationfo ...

  4. C++虚方法(虚函数)随笔

    本文不讨论虚函数的原理,只简单总结下虚函数的常用事项. 虚函数(虚方法)是C++动态联编 实现多态的重要手段,在函数声明时使用关键字virtual即可,如: virtual void func(voi ...

  5. static成员变量与返回对象的引用

    (1)用static修饰类成员变量(属性),表明该变量是静态的,无论创建多少对象,都只创建一个一个静态属性副本,也就是对象们共享同一个静态属性,这个方法常用的一个用途就是用来计算程序调用了多少次这个类 ...

  6. 13个JavaScript图表(JS图表)图形绘制插件【转】

    现在网络上又有越来越多的免费的(JS 图表)JavaScript图表图形绘制插件.我之前给一家网站做过复杂的图形,我们用的是 highchart.在那段时间,没有很多可供选择的插件.但现在不同了,很容 ...

  7. android手动修改density(dpi)的方法

    Android系统中会根据屏幕分辨率范围,制定默认的density,既320(xhdpi),那么我们也可以手动修改density. 修改的方式在system.prop中修改ro.sf.lcd_dens ...

  8. css声明应用优先级

    1.特殊性 选择器的特殊值由四部分组成:0,0,0,0 第一位预留给内联样式   <h1 style="color:red;"></h1> 第二位属于ID选 ...

  9. webstorm mac版快捷键

    WebStorm快捷键(Mac版) ⌘--Command ⌃ --Control ⌥--alt ⇧--Shift ⇪--Caps Lock fn--功能键就是fn 编辑 Command+alt+T 用 ...

  10. 分析一个delphi程序

    系统 : Windows xp 程序 : k4n6 程序下载地址 :https://pan.baidu.com/s/1pLANxyj 要求 : 注册机编写 使用工具 : OD & DeDe 可 ...