来自 WPF 应用程序的 Sendkey

发布于 2024-11-16 14:15:39 字数 298 浏览 1 评论 0原文

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

现在...我怎样才能将此消息发送到窗口(Ctrl+F6)?我尝试使用 sendkeys 但不起作用,它说:“SendKeys 无法在此应用程序内运行,因为该应用程序不处理 Windows 消息。要么更改应用程序来处理消息,要么使用 SendKeys.SendWait 方法。”

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

有什么帮助或线索吗?

提前致谢

I have an WPF full screen application and I configured Skype´s "Focus Skype" Hotkey to Ctrl+F6 combination.

Now... How can I send this message to windows (Ctrl+F6)? I tried by sendkeys but is not working, it says that: "SendKeys cannot run inside this application because the application is not handling Windows messages. Either change the application to handle messages, or use the SendKeys.SendWait method."

I tried Sendkeys.sendwait method but it minimized my full screen application and I need it remains full screen.

any help or clue?

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

新一帅帅 2024-11-23 14:15:39

试试这个:

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

Try this:

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

The keycodes can be viewed here:
http://www.codeproject.com/KB/system/keyboard.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文