来自WPF应用程序的Sendkeys

时间:2011-06-20 07:45:19

标签: c# vb.net sendkeys

我有一个WPF全屏应用程序,我将Skype的“Focus Skype”热键配置为Ctrl + F6组合。

现在......如何将此消息发送到Windows(Ctrl + F6)?我试过sendkeys但是没有用,它说:“SendKeys无法在这个应用程序中运行,因为应用程序没有处理Windows消息。要么更改应用程序来处理消息,要么使用SendKeys.SendWait方法。”

我尝试了Sendkeys.sendwait方法,但它最小化了我的全屏应用程序,我需要它全屏显示。

任何帮助或线索?

提前致谢

1 个答案:

答案 0 :(得分:2)

试试这个:

Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, _
ByVal bScan As Byte, ByVal dwFlags As Integer, ByVal dwExtraInfo As Integer)

Private Const kbdDown = 0
Private Const kbdUp = 2



Private Sub SendKey(ByVal Key As Byte)
    Call keybd_event(Key, 0, kbdDown, 0)
    Call keybd_event(Key, 0, kbdUp, 0)

End Sub

可在此处查看密钥代码: http://www.codeproject.com/KB/system/keyboard.aspx