如何阻止LowLevelKeyboardProc写入密钥

时间:2015-10-28 07:39:59

标签: c#

我正在编写一个程序来弄乱键盘上的键(如果按A键则会写入K键)。一切都很好但我有一个问题,当你写(如在例子中)A它会写KA。因此程序会写出我想要的内容以及用户的输入。

这是功能:

private static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam)
{
    // My keyboard messing is here
    return CallNextHookEx(_hookID, nCode, wParam, lParam);
}

我最初认为让Windows不写密钥的方法是改变回报。我已经更改了它,删除了它,甚至更改了我传递的参数中的信息,似乎没有任何效果。

我的问题是:如何制作,以便操作系统不会写出用户按下的内容?

1 个答案:

答案 0 :(得分:0)

所以解决方案实际上非常简单。我应该返回CallNextHookEx

而不是返回(IntPtr)1函数