C#中keybd_event 用法

Windows提供了一个模拟键盘API函数Keybd_event(),该函数能触发一个按键事件,也就是说会产生一个WM_KEYDOWN或WM_KEYUP消息。     

   [DllImport("user32.dll", EntryPoint = "keybd_event")]

        public static extern void keybd_event(

            byte bVk,    //虚拟键值

            byte bScan,// 一般为0

            int dwFlags,  //这里是整数类型  0 为按下,2为释放

            int dwExtraInfo  //这里是整数类型 一般情况下设成为 0

        );        

使用方法:

            keybd_event((byte)Keys.LWin, 0, 0, 0);   //按下LWIN

            keybd_event((byte)Keys.D, 0, 0, 0);         //按下D

            keybd_event((byte)Keys.LWin, 0, 2, 0);   //释放LWIN

            keybd_event((byte)Keys.D, 0, 2, 0);        //释放D

补充:

1.调用API函数记得引用:using System.Runtime.InteropServices;

2.常用模拟键的键值对照表。

                      键盘键与虚拟键码对照表

      字母和数字键   数字小键盘的键       功能键         其它键 
      键   键码   键   键码       键   键码     键      键码 
      A   65     0   96        F1   112     Backspace    8 
      B   66    1   97        F2   113     Tab       9 
      C   67     2   98        F3   114     Clear      12 
      D   68     3   99        F4   115     Enter      13 
      E   69     4   100       F5   116     Shift      16 
      F   70     5   101       F6   117     Control     17 
      G   71     6   102       F7   118      Alt       18 
      H   72     7   103       F8   119     Caps Lock    20 
      I   73     8   104       F9   120     Esc       27 
      J   74     9   105       F10  121     Spacebar    32 
      K   75     *   106       F11  122     Page Up     33 
      L   76     +   107       F12  123     Page Down    34 
      M   77     Enter 108       --   --     End       35 
      N   78      -   109       --   --      Home      36 
      O   79      .   110       --   --      Left Arrow   37 
      P   80      /   111       --   --      Up Arrow    38 
      Q   81      --   --       --   --      Right Arrow   39 
      R   82      --   --       --   --      Down Arrow    40 
      S   83      --   --       --   --      Insert      45 
      T   84      --   --       --   --      Delete      46 
      U   85      --   --       --   --      Help       47 
      V   86      --   --       --   --      Num Lock     144 
      W   87          
      X   88      
      Y   89      
      Z   90      
      0   48      
      1   49      
      2   50       
      3   51       
      4   52       
      5   53       
      6   54       
      7   55       
      8   56       
      9   57 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值