【问题标题】:Possible to do MouseMove actions with PostMessage without hijacking the cursor?可以在不劫持光标的情况下使用 PostMessage 执行 MouseMove 操作吗?
【发布时间】:2020-04-18 18:09:56
【问题描述】:

我正在使用 PostMessage WinApi 执行 MouseClick 操作,有没有办法用它来模拟 MouseMove 不需要窗口焦点,所以我仍然可以将光标用于其他任务?我知道PostMessage 的 lParam 参数,但它只有在我将鼠标指针设置在 DirectX 窗口内时才会生效。

SetCursorPos 不是解决方案,因为我想在不劫持光标的情况下执行 MouseMoves。

我希望这是有道理的, 谢谢

【问题讨论】:

  • 你的意思是发帖WM_MOUSEMOVE/WM_NCMOUSEMOVE没有帮助吗?

标签: c# c++


【解决方案1】:

还有很多地方不止WM_MOUSEMOVE留言lParam

GetMessagePos 功能。它可以通过设置 Windows Hooks 和更改 MSG::pt 来伪造,因此调用 GetMessagePos 将返回模拟光标位置而不是实际位置。

但是有GetCursorPos,可能还有其他获取鼠标位置的方法,比如WM_INPUT。我认为最终只有移动光标(SetCursorPosSendInput)才能覆盖其中的大部分。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-27
    • 1970-01-01
    • 2013-10-04
    相关资源
    最近更新 更多