keybd_event使用注意事项

注意对于下面参数dwFlags的描述。
遇到按钮只出发一次的问题:
这个参数的值是可以进行 | 运算的,如果只输入一个值,按钮的状态不会自动改变回为被触发的状态,需要编写代码的时候去主动切换按钮的状态。或者在传入时就进行 | 运算。
在Microsoft手册中有更详细的例子。
Syntax
C++

void keybd_event(
BYTE bVk,
BYTE bScan,
DWORD dwFlags,
ULONG_PTR dwExtraInfo
);

Parameters

bVk

Type: BYTE

A virtual-key code. The code must be a value in the range 1 to 254. For a complete list, see Virtual Key Codes.

bScan

Type: BYTE

A hardware scan code for the key.

dwFlags

Type: DWORD

Controls various aspects of function operation. This parameter can be one or more of the following values.
Table 1
Value Meaning

KEYEVENTF_EXTENDEDKEY
0x0001

If specified, the scan code was preceded by a prefix byte having the value 0xE0 (224).

KEYEVENTF_KEYUP
0x0002

If specified, the key is being released. If not specified, the key is being depressed.

dwExtraInfo

Type: ULONG_PTR

An additional value associated with the key stroke.
Return value

None

https://baike.baidu.com/item/keybd_event/6372528?fr=aladdin 百度百科部分
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-keybd_event Microsoft手册

============================
其它资料整理:
导入命名空间
using System.Diagnostics
使用C#的Process.Start()执行
Process对象调用Kill()关闭
windows软键盘:
C:\Windows\System32\osk.exe

windows触摸键盘:
C:\Program Files\Common Files\microsoft shared\ink\TabTip.exe
如何调用触摸键盘:
https://blog.csdn.net/qq_26355993/article/details/80228695

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值