2009-08-16 6 views
2

J'essaie d'envoyer une entrée à partir d'un WPF Window qui n'a pas de focus. L'idée est de créer un pavé numérique virtuel, en appuyant sur Alt+M par exemple envoie Alt+Numpad0. J'ai Michael Kennedy travail de global hooks, mais je ne peux pas trouver un moyen de:C#: Envoyer une entrée de la fenêtre inactive

1) Envoyer des clés à partir d'une fenêtre inactive

2) Avalez ces clés afin qu'ils ne sont pas traitées par l'application qui a l'accent.

La seconde peut devenir un non-problème une fois que j'ai obtenu le premier corrigé.

System.Windows.Forms.SendKeys n'a pas fonctionné pour cela parce que j'ai besoin de simuler les combinaisons Alt+xxx pour générer les bons caractères. J'ai également essayé System.Windows.Input.InputManager.Process() à partir d'un MSDN post, mais si la fenêtre envoyant l'entrée n'a pas le focus, l'InputSource que j'utilisais (second paramètre - Keyboard.PrimaryDevice.ActiveSource) est null.

Des idées?

Pourquoi un pavé numérique virtuel? Sans un pavé numérique sur mon ordinateur portable (Studio 1555) je ne peux pas entrer de symboles sans ouvrir le charmap - merci Dell!

Répondre

Questions connexes