1

我正在尝试从外部 c# 程序启动 chrome 扩展。

到目前为止我所拥有的:

扩展完成并在单击扩展按钮时启动。该程序通过 Process.GetProcessesByName 搜索可用的 chrome 浏览器。完成后,它会使用 Ui-Automation dll 搜索 chrome 扩展按钮。

我能够向下钻取并找到该按钮,但它没有 Invoke 模式或任何与此相关的模式,即使控件类型是按钮也是如此。

目标:

我让用户绑定一个热键以用作他们的媒体键,而不是按 fn+MediaKey。我还希望该程序影响扩展中的 javascript 处理的 youtube 视频。它暂停所有正在播放的视频,并播放所有暂停的视频。我认为编写扩展程序并调用单击就可以了,但是 chrome 工具栏按钮似乎都没有响应 Invoke 操作。

我将不胜感激任何帮助指出我正确的方向。

4

1 回答 1

0

我可以指出一些方法来做到这一点,但无论如何它都会被视为一个安全问题。例如,您可以使用registerProtocolHandler自定义 URI 在您的应用程序和扩展程序之间传递消息,但它正在作为一个漏洞进行讨论,并且很快就会受到限制。

恐怕没有办法为 chrome 扩展带来这种能力,除非你使用NPAPI 插件并让其中一个是真正的痛苦。

我能想到的最佳解决方案是让您的应用程序重新映射Commands API支持的某些快捷方式的媒体键。

祝你好运!

于 2013-05-31T04:14:39.327 回答