如何改变鼠标在钩子中的位置

发布于 2024-12-27 02:07:11 字数 323 浏览 1 评论 0原文

我想知道如何在 MouseProc 函数中更改鼠标位置。特别是保持 Y 坐标相同。这是我的功能:

function HookProc(nCode: Integer; MsgID: WParam; Data: LParam): LResult; stdcall;
var
begin        
  PMouseHookStruct(Data)^.pt.Y:=600;

  Result := CallNextHookEx(Hook,nCode,MsgID,Data);
end;

我认为重写 MouseHookStruct Y 坐标可以解决问题,但显然不行。

I would like to know how I can change mouse position in MouseProc function. Specifically to keep Y-coordinate the same. This is my function:

function HookProc(nCode: Integer; MsgID: WParam; Data: LParam): LResult; stdcall;
var
begin        
  PMouseHookStruct(Data)^.pt.Y:=600;

  Result := CallNextHookEx(Hook,nCode,MsgID,Data);
end;

I thought that re-writing the MouseHookStruct Y-coord would do the trick, but apparently not.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

唱一曲作罢 2025-01-03 02:07:11

您可能正在寻找ClipCursor 函数。无需使用钩子。

评论:
游标是共享资源。如果应用程序限制了光标,则在将控制权交给另一个应用程序之前,它必须使用 ClipCursor 释放光标。
该函数将光标限制在屏幕上的矩形区域。

You might be looking for ClipCursor Function. No need to use hooks.

Remark:
The cursor is a shared resource. If an application confines the cursor, it must release the cursor by using ClipCursor before relinquishing control to another application.
The function confines the cursor to a rectangular area on the screen.

许仙没带伞 2025-01-03 02:07:11

查看 SetCursorPos Win32 函数。

Have a look at the SetCursorPos Win32 function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文