gpt4 book ai didi

C# 向 Minecraft 发送关键输入以移动玩家

转载 作者:太空宇宙 更新时间:2023-11-03 19:39:44 26 4
gpt4 key购买 nike

我正在尝试将键盘输入发送到 Minecraft 以移动玩家,但是当我尝试使用 SendKeys.SendWait("W"); 时没有任何反应。如果我在 Minecraft 中打开聊天,它会在聊天中输入“W”,但是在聊天之外我的输入似乎被忽略了。谢谢。

编辑:我试过使用 SendInputInputSimulator 都具有相同的效果。

最佳答案

基本上 Windows 有三个 protection ring .通过执行 SendKeys,您将向应用程序发送 ring 3 命令。但是,DirectX 仅监听 ring 0 和 ring 1(可能是 ring 2)命令,以减少由命令通过驱动程序传递到应用程序引起的小数延迟。

因此,为了使 DirectX 游戏对您发送的事件使用react,您必须在驱动程序级别发送它。您可以通过 pinvoke WINDOWS api 模拟 ring 2 驱动程序输入 SendInput带扫码(不要用虚码)。

如果扫描码不起作用,则游戏可能出于反黑客目的而阻止了 ring 2 命令。在那种情况下,您需要编写一个驱动程序 + 一个虚拟硬件来直接发送 ring 1 命令。 (没有经验的请勿尝试,操作失误可能导致蓝屏死机甚至系统崩溃)

关于C# 向 Minecraft 发送关键输入以移动玩家,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55249483/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com