【问题标题】:How do i prevent a mouse from sending input to DirectInput game?如何防止鼠标向 DirectInput 游戏发送输入?
【发布时间】:2016-09-14 13:56:20
【问题描述】:

这个问题最初是关于如何捕获鼠标事件,经过大量研究,我使用 SetWindowsHookEx 和 C++ 解决了这个问题。 问题是,它在 Windows 上对我有用,它适用于应用程序,但它不适用于游戏。 有人可以帮我理解为什么鼠标钩在某些游戏中不起作用吗?我尝试过的所有游戏都可能使用原始输入吗? :S (我尝试过 Ibb&Obb、Fallout 4、Metro Last Light 和其他一些游戏)

基本上我在问:如何使用鼠标钩在所有运行的应用程序中全局捕获它?

感谢帮助。

编辑: 我发现我玩的大多数游戏都使用 DirectInput。猜猜更好的问题是:如何在 DirectInput 中拦截鼠标消息并防止它们被游戏注册?我希望能够拖动鼠标,它不会影响游戏。

【问题讨论】:

  • 当然,只有当应用程序使用作为消息发布的正常 Windows 通知时,挂钩才能起作用。游戏不会。
  • 感谢 Hans 的快速响应,你是我的救星 :D 有什么方法可以让我用不同的方法捕获鼠标以防止游戏响应我的鼠标?

标签: c++ mouse raw-input setwindowshookex directinput


【解决方案1】:

经过大量研究后,我发现,据我所知,API Hooking(Microsoft Detours、API Hijack 等)是唯一的方法。 重要提示:这对我没有多大帮助,因为游戏的 API Hooking 需要 DLL 注入,这会让你禁止进入 Steam 和其他平台。 p>

【讨论】:

    猜你喜欢
    • 2019-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-24
    • 1970-01-01
    • 2012-03-03
    相关资源
    最近更新 更多