Question

Comment puis-je savoir si mon appel à SendInput fonctionne correctement? J'ai un petit extrait ci-dessous, et le message ne semble jamais être touché. SendInput () retourne 1, et il n'y a pas d'erreurs, donc je suppose que le message va correctement.

J'ai aussi essayé le formulaire KeyPress et KeyDown des événements, et je ne semblent jamais les deux.

    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);
    }
Était-ce utile?

La solution

Il se trouve que je cherchais la clé vers le bas, je devais écouter ProcCmdKeys, et non pas seulement la clé vers le bas événement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top