-2
我想通过键盘改变输入的键。如何通过C#中的应用程序之外的键盘更改输入的键?
我设法限制键盘输入的键。
代码在C#:
using System.Runtime.InteropServices;
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
SetWindowsHookEx(WH_KEYBOARD_LL, hookProc, LoadLibrary("User32"), 0);
HookedKeys.Add(Keys.A);
HookedKeys.Add(Keys.B);
}
[DllImport("user32.dll")]
static extern IntPtr SetWindowsHookEx(int idHook, keyboardHookProc callback, IntPtr hInstance, uint threadId);
[DllImport("kernel32.dll")]
static extern IntPtr LoadLibrary(string lpFileName);
const int WH_KEYBOARD_LL = 13;
const int WM_KEYDOWN = 0x100;
public List<Keys> HookedKeys = new List<Keys>();
public delegate int keyboardHookProc(int code, int wParam, ref keyboardHookStruct lParam);
public struct keyboardHookStruct
{
public int vkCode;
}
public int hookProc(int code, int wParam, ref keyboardHookStruct lParam)
{
Keys key = (Keys)lParam.vkCode;
if (HookedKeys.Contains(key))
return 1;
else
return 0;
}
}
窗口.... 记事本上调试支票或其他地方后,A和B键将无法正常工作
我如何修改键,取代'A'其他一些关键?
请详细说明你越试图完成 – yonan2236 2010-10-23 07:16:49
什么也许你可以提供你已经尝试了代码并让我们知道您面临的问题 – InSane 2010-10-23 07:19:34