我正在尝试发送来自没有焦点的WPF Window的输入。这个想法是创建一个虚拟的数字键盘,例如,按下Alt+M就会发送Alt+Numpad0。我已经让迈克尔·肯尼迪的global hooks正常工作了,但我找不到一种方法:
1)从非活动窗口发送密钥
2)接受这些键,这样它们就不会被具有焦点的应用程序处理。
一旦我解决了第一个问题,第二个可能就不再是问题了。
System.Windows.Forms.SendKeys对此不起作用,因为我需要模拟Alt+xxx组合来生成正确的字符。我也尝试了从MSDN post使用System.Windows.Input.InputManager.Process(),但是如果发送输入的窗口没有焦点,我使用的InputSource (第二个参数- Keyboard.PrimaryDevice.ActiveSource)是null。
有什么想法吗?
为什么是虚拟的数字键盘?如果我的笔记本电脑(Studio 1555)上没有数字键盘,我无法在不打开charmap的情况下输入符号-感谢戴尔!
发布于 2011-05-17 04:18:13
查看用于模拟击键的Windows Input Simulator。或者使用AutoHotkey抓取任何击键并将其作为其他击键重新发送。
https://stackoverflow.com/questions/1284344
复制相似问题