按键(wm_keydown,wparam,lparam)并模拟Enter键

时间:2011-12-09 23:32:47

标签: keyboard key keypress enter

我不明白如何在.NetWrapper中使用此方法内容来注入键盘键(在C#中) 当我调用方法时我需要模拟“输入”键盘。 (好像我真的按下输入键)

//   msg:
//     The Windows keyboard message (usually WM_KEYDOWN, WM_KEYUP and WM_CHAR).
//
//   wparam:
//     The first parameter of the message as intercepted by the window procedure.
//
//   lparam:
//     The second parameter of the message as intercepted by the window procedure.


protected void InjectKeyboardEventWin(int msg, int wparam, int lparam);

如果我无法使用此方法来模拟“输入”键有没有办法用javascript做到这一点?

关于javascript:

在HTTP表单中(我想模拟“enter”键)没​​有任何“提交”按钮。

因此,在TextBot中提交数据内容的唯一方法是使用“Enter”

Ps我不能使用JQuery

1 个答案:

答案 0 :(得分:0)

不确定InjectKeyboardEventWin()方法的来源,但Windows中的实际功能是:

VOID WINAPI keybd_event(
  __in  BYTE bVk,
  __in  BYTE bScan,
  __in  DWORD dwFlags,
  __in  ULONG_PTR dwExtraInfo
);

这将允许您模拟当前具有焦点的应用程序的按键。您还可以使用类似功能模拟鼠标事件。为了模拟按ENTER键,你需要调用两次;一次用于keydown事件,另一次用于keyup。您可以在此处查看详细信息:

MSDN doc on keybd_event