我怎样才能知道我来SendInput通话是否正常工作?我有一个小片段下方,消息似乎从来没有被击中。 SendInput()返回1,而且也没有错误,所以我认为该消息是正确的走出去。

我也试过表单按键响应和事件的KeyDown,我似乎从来没有得到那些无论是。

    private void button1_Click(object sender, EventArgs e)
    {
        INPUT input = new INPUT();
        input.mkhi.ki.wVk = (byte)System.Windows.Forms.Keys.B;
        uint result = SendInput(1, ref input, Marshal.SizeOf(new INPUT()));
    }
    protected override void WndProc(ref Message m)
    {
        if (m.Msg == WM_KEYDOWN)
        {
            Console.WriteLine("GotIt");
        }
        base.WndProc(ref m);
    }
有帮助吗?

解决方案

原来,因为我一直在寻找,向下键,我需要听ProcCmdKeys,而不仅仅是键按下事件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top