C#模拟键盘操作

/*
 键盘模拟器(用于模拟键盘发出指令)
 */
using System.Collections;
using System.Collections.Generic;
using System.Runtime.InteropServices;

namespace iFramework
{
    public class KeyBoardSimulator
    {

        public enum OperateType
        {
            PressDown,
            PressHoldOn,
            PressRelease,
        }

        /// <summary>
        /// byte bvk,//虚拟键值 ESC键对应的是27
        /// byte bScan,//0
        /// int dwFlags,//0为按下,1按住,2释放
        /// int dwExtraInfo//0
        /// </summary>
        [DllImport("user32.dll", EntryPoint = "keybd_event")]
        public static extern void Keybd_event(byte bvk, byte bScan, int dwFlags, int dwExtraInfo);

        public static void SendMessage(OperateType type, byte KeyCode)
        {
            Keybd_event(KeyCode, 0, (int)type, 0);
        }



        ///*
        //                       键盘键与虚拟键码对照表

        //  字母和数字键     数字小键盘的键       功能键         其它键
        //  键   键码     键   键码       键   键码     键      键码
        //  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  
        // */

    }

}

猜你喜欢

转载自blog.csdn.net/jcpkwudi/article/details/86673656