C #: отправка ввода из неактивного окна

2

Я пытаюсь отправить данные из WPF Window, который не имеет фокуса. Идея заключается в создании виртуального numpad, в результате чего нажатие Alt+M отправляет Alt+Numpad0. У меня есть Michael Kennedy глобальные перехватчики, но я не могу найти способ:

1) Отправлять ключи из неактивного окна

2) Проглотите эти клавиши, чтобы они не обрабатывались приложением, имеющим фокус.

Второй может стать не-проблемой, как только я получу первый исправленный.

System.Windows.Forms.SendKeys не работал для этого, потому что мне нужно симулировать комбинации Alt+xxx для генерации правильных символов. Я также попробовал System.Windows.Input.InputManager.Process() из сообщение MSDN, но если в окне, отправляющем вход, нет фокуса, InputSource, который я использовал ( второй параметр - Keyboard.PrimaryDevice.ActiveSource) имеет значение null.

Любые идеи?

Почему виртуальная цифра? Без numpad на моем ноутбуке (Studio 1555) я не могу вводить символы без открытия charmap - спасибо Dell!

Теги:
wpf
window
interop

1 ответ

1

Ознакомьтесь с Windows Input Simulator для имитации нажатий клавиш. Или используйте AutoHotkey, чтобы захватить любое нажатие клавиши и отправить ее как другое нажатие клавиши.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню