【发布时间】:2010-12-21 02:09:57
【问题描述】:
我正在为程序制作用户可定义的键宏。 (这些宏仅限于该程序。)
我正在使用 TApplicationEvents 来记录关键消息。然后使用 SendInput 播放它们。但我需要禁用鼠标和键盘,以免中断播放。
我无法使用 JournalPlaybackProc 和 JournalRecordProc,因为它们受 UAC、Vista 和 Win7 中的 UIPI 约束。
是否有一种简单的方法可以在仍然使用 SendInput 的同时阻止鼠标和键盘输入。 (一种不需要提升权限的方式。)
我还需要一个停止播放的转义键。
编辑: TControl.Perform 不起作用,因为它忽略了热键。
我曾想过在 WM_KEY 消息中使用保留的半字节(第 25-28 位),但在 windows 文档中它说它是保留的并且不使用。会有什么后果。
【问题讨论】:
标签: delphi winapi windows-7 windows-vista delphi-7