注意:这似乎不一定只适用于 Silverlight,我读过人们对 Flash 也有同样的问题,所以请记住这一点。
我正在尝试编写一个程序,通过我自己的按钮控制 Netflix(目前,最终它将扩展到移动远程控制应用程序),方法是使用 windows api 直接向它发送热键。
- 我能够检索 Netflix Silverlight 播放器使用的实际窗口句柄。
- 我能够将击键发送到指定的窗口句柄(使用
TranslateMessage
win api 中的函数) - 但由于某种原因,我无法让 netflix 播放器识别我发送的任何击键。
- 在尝试发送按键之前,我曾尝试
SetFocus
在 win api 中使用该功能,但这无济于事。
我需要弄清楚的是,为什么它将通过 api 调用发送的键与物理键盘按键区分开来。
以下是我的设置方式(供参考的窗口类名):
表格 1 (
WindowsForms10.Window.8.app.0.33c0d9d
)网络浏览器控件 (
Shell DocObject View
)HTML 页面 (
Internet Explorer_Server
)嵌入式 Silverlight 播放器 (
MicrosoftSilverlight
)
我想知道是否有人可以提供一些建议。非常感谢..希望有人可以帮助我度过这个难关。