首页 > 解决方案 > 在 C++ 中过滤所有应用程序的消息

问题描述

大多数现代鼠标都有一种称为“去抖动”的功能,可以防止它们在按钮弹起时多次单击。不幸的是,当我只想发送一次点击时,我的鼠标不会发送两次或多次点击。我想使用 C++ 防止这种情况发生。

对于如何做到这一点,我有两个想法。一种是通过安装低级鼠标挂钩来阻止连续发生的点击,另一种是通过以相同方式过滤发送到应用程序的消息。

但是,我不知道如何做这些事情,或者它们是否可能。我尝试寻找解决方案,但找不到任何东西。

我找到了有关如何安装低级鼠标钩子的说明,问题是细节和点击过滤。如果有人能告诉我我的两个想法中哪一个是可能的,哪一个更好,或者如果有另一种可行的方法,那就太好了。

编辑:我已经发现 PeekMessage 具有我正在寻找的功能,但仅适用于当前线程中的窗口,而我需要从所有窗口中删除消息。基于此,我认为我唯一的选择是钩子。

标签: c++windowsvisual-c++mousesendmessage

解决方案


推荐阅读