1 #region 打开键盘的键 2 const uint KEYEVENTF_EXTENDEDKEY = 0x1; 3 const uint KEYEVENTF_KEYUP = 0x2; 4 5 [DllImport("user32.dll")] 6 static extern short GetKeyState(int nVirtKey); 7 [DllImport("user32.dll")] 8 static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, uint dwExtraInfo); 9 10 public enum VirtualKeys : byte 11 { 12 VK_NUMLOCK = 0x90, //数字锁定键 13 VK_SCROLL = 0x91, //滚动锁定 14 VK_CAPITAL = 0x14, //大小写锁定 15 VK_A = 62 16 } 17 18 //获取key 19 public static bool GetState(VirtualKeys Key) 20 { 21 return (GetKeyState((int)Key) == 1); 22 } 23 //设置key 24 public static void SetState(VirtualKeys Key, bool State) 25 { 26 if (State != GetState(Key)) 27 { 28 keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | 0, 0); 29 keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0); 30 } 31 } 32 #endregion
//打开大写键盘
调用: SetState(VirtualKeys.VK_CAPITAL, true);