如何更改游戏中的光标并在光标更改时采取措施?

时间:2019-05-06 23:33:30

标签: c# mouse-cursor

我想监视我正在玩的游戏中的光标。在游戏的当前部分中只有两个光标。我想监视光标何时更改并单击鼠标。

我发现了一些不同的代码来获取游标信息并将其保存到IntPtr中,但是我不确定如何保存并在更改时进行比较。

public void getCursor()
        {
            IntPtr hwndic = new IntPtr();
            Win32.CURSORINFO curin = new Win32.CURSORINFO();
            curin.cbSize = Marshal.SizeOf(curin);
            if (Win32.GetCursorInfo(out curin))
            {
                if (curin.flags == Win32.CURSOR_SHOWING)
                {
                    hwndic = Win32.CopyIcon(curin.hCursor);
                }
            }
        }

我在网上找到了捕获当前光标的代码,但我不确定如何使用它来经常检查光标,如果它发生更改,则可以执行一些代码。该游戏当然具有自定义光标,所以我不能只监视任何默认光标等。

我实际上是在使用代码

GetCursorState().ToString()

要获取游标ID并仅监视我要查找的游标ID,但似乎游标ID可以在系统重新启动时发生更改,或者游戏可能会更改ID,或者系统中的某些内容会使ID发生更改。所以这是不可行的,因为ID可以更改我的身份。

我也不介意这样做,因为它需要获取鼠标光标的快照并比较光标直到其变化,然后再执行一些操作,但是我还没有找到适合我情况的代码。我一直在寻找代码来做到这一点,但没有好运。我已经尝试了几乎所有东西。

所有帮助将不胜感激,谢谢!

0 个答案:

没有答案