将密钥发送到未聚焦的窗口

问题描述

我很沮丧,我已经尝试了将近2个星期来为在我的PC上运行的游戏制作机器人。 基本上,我想要一个机器人在后台运行且没有焦点的游戏中每5秒按1和TAB。我已经和一个实现它的人交谈过,但是他说,由于这并不容易,他不会告诉我他是如何做到的,他只说这与过程管道有关,我应该关注激活窗口的事件。 。 他给我发了这个链接https://www.pinvoke.net/default.aspx/Constants.WM

任何帮助将不胜感激。

这是我最近在后台运行的尝试,但仅用于记事本:

static class Program
{
    const UInt32 WM_KEYDOWN = 0x0100;
    const UInt32 WM_KEYUP = 0x0101;
    const int VK_D1 = 0x0031;
    


    [DllImport("user32.dll")]
    static extern bool PostMessage(IntPtr hWnd,UInt32 Msg,int wParam,int lParam);

    [STAThread]
    static void Main()
    {
        while (true)
        {

            IntPtr hwnd = (IntPtr)1517968;
            PostMessage(hwnd,WM_KEYDOWN,VK_D1,0);
            Console.WriteLine(hwnd);
            PostMessage(hwnd,WM_KEYUP,0);

            Thread.Sleep(5000);
        }
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)