Delphi WinAPI INPUT_KEYBOARD

Delphi WinAPI INPUT_KEYBOARD   - 包含有关模拟键盘事件的信息。

原型:

typedef struct tagKEYBDINPUT {
  WORD      wVk;
  WORD      wScan;
  DWORD     dwFlags;
  DWORD     time;
  ULONG_PTR dwExtraInfo;
} KEYBDINPUT, *PKEYBDINPUT, *LPKEYBDINPUT;

Delphi:

PKeybdInput = ^TKeybdInput;
  {$EXTERNALSYM tagKEYBDINPUT}
  tagKEYBDINPUT = packed record
    wVk: WORD;
    wScan: WORD;
    dwFlags: DWORD;
    time: DWORD;
    dwExtraInfo: DWORD;
  end;
  TKeybdInput = tagKEYBDINPUT;  

参数:

  • wVk(Type: WORD)//虚拟密钥代码。代码必须是1到254范围内的值。如果dwFlags成员指定KEYEVENTF_UNICODE,则wVk必须为0。
  • wScan(Type: WORD)//钥匙的硬件扫描代码。如果dwFlags指定KEYEVENTF_UNICODE,则wScan指定要发送到前台应用程序的UNICODE字符。
  • dwFlags(Type: DWORD)//指定击键的各个方面。此成员可以是以下值的某些组合。time(Type: DWORD)  //事件的时间戳,以毫秒为单位。如果此参数为零,系统将提供自己的时间戳。
    • KEYEVENTF_EXTENDEDKEY  //如果指定,扫描代码前面有一个前缀字节,该前缀字节的值为0xE0(224)。
    • KEYEVENTF_KEYUP  //如果指定,则释放密钥。如果未指定,则表示正在按键。
    • KEYEVENTF_SCANCODE  //如果指定,wScan将标识密钥并忽略wVk。
    • KEYEVENTF_UNICODE  //如果指定,系统将合成一个VKu数据包击键。wVk参数必须为零。此标志只能与KEYEVENTF_KEYUP标志组合使用。有关更多信息,请参阅备注部分。
  • dwExtraInfo(Type: ULONG_PTR)  //与击键相关的附加值。使用GetMessageExtraInfo函数获取此信息。

  

创建时间:2021.06.28  更新时间:

博客园 滔Roy https://www.cnblogs.com/guorongtao 希望内容对你所有帮助,谢谢!
原文地址:https://www.cnblogs.com/guorongtao/p/14944235.html