我想通过C ++使用SendInput锁定计算机(Windows+L
)。我创建了简单的keyDown / keyUp函数,我在其中使用SendInput
发送VK。在keyUp上,它会添加flag 0x0002
我可以模拟我的Tab键,我的Windows键,现在我尝试用模拟键击锁定我的电脑。我发送以下消息:
key down: 0x5B (win key)
key down: 0x4C (L)
key up: 0x4C (L)
key up: 0x5B (win key)
我的问题:什么都没发生: - (
有人知道解决方案是什么吗?
答案 0 :(得分:2)
如果我没有弄错的话,你将无法用SendInput()
(或keybd_event()
)执行此操作,因为它只是将键注入键盘输入缓冲区,但是特殊的键序列如{{{ 1}},CTRL+ALT+DEL
等在较低层运行,在将密钥放入输入缓冲区之前由OS解释。
锁定计算机的正确方法是使用LockWorkStation()
功能。