5

如何检测 ANSI C 和/或 Win32 SDK 中的一个或多个按键组合?

例如:如何检测 CTRL+ALT+DEL 是否被按下?

请给我一些源代码或任何网络链接。

请注意,我使用的是轮询机制,而不是事件。

我需要在 win32 控制台模式下进行。

4

1 回答 1

1

使用 ANSI C 是不可能的,因为 ANSI C 没有定义任何以这种方式访问​​键盘的方法。其中接受用户输入的最低级函数是在输入字符并按下 ENTERgetc后返回一个字符。stdin

至于Win32 API,确实可以做到。在消息处理函数 ( WndProc) 中,您应该注意WM_CHAR消息。修饰符将帮助您查看是否按下了 CTRL 和 SHIFT。


PS只是一个想法,也许您正在寻找的是像Autohotkey这样的工具?

于 2010-07-17T11:32:23.890 回答