google-chrome - 从扩展内获取 Chrome 选项卡的窗口句柄?

标签 google-chrome google-chrome-extension npapi window-handles

我编写了一个 Chrome 扩展程序(也带有 NPAPI),允许我的应用程序和 Chrome 相互通信。这基本上都工作正常。

我现在想做的是将 Chrome 窗口的 HWND 绑定(bind)到特定的窗口 ID 和选项卡 ID。

当我在 Chrome 中(通过插件)时,我有选项卡 ID 和窗口 ID,我可以根据它们执行大多数操作。

当我在 Chrome 之外(通过我的应用程序)时,我可以看到窗口结构并获取各个选项卡的 HWND。

有什么方法可以将它们可靠地结合在一起,以便我的应用程序可以告诉 Chrome 从特定选项卡获取有关/来自特定选项卡的信息?

最佳答案

如果您有 Spy++,您会看到网站标题与选项卡窗口标题保持一致。你绝对应该使用它。

要消除标题冲突,只需从扩展中调用 chrome.tabs.query()chrome.tabs.update() 即可保存、更改和恢复选项卡的标题。然后使用 GetCurrentProcess()EnumWindows()/WindowEnumProc() 获取子窗口层次结构并匹配您的自定义标题。您必须将其传递给 EnumWindowsProc 回调函数。

关于google-chrome - 从扩展内获取 Chrome 选项卡的窗口句柄?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11472708/

相关文章:

javascript - Facebook JavaScript API - Chrome 中登录失败

javascript - 为什么 Chrome 收不到我的 cookie?

javascript - 通过浏览器操作/图标禁用/启用 Chrome 扩展

c++ - NPAPI mac 插件与浏览器共享命令

debugging - 如何在 OSX 10.11 中调试 Safari NPAPI 插件?

html - Float 在 IE 7 和 IE 8 中看起来不同(html 验证)

javascript - 如何在 onStartup 和 onInstalled 中添加 Chrome 扩展监听器?

javascript - 以编程方式在 chrome 扩展中启用内容脚本

javascript - 就地编辑 Chrome 扩展 javascript

NPAPI 插件之上的 HTML