我编写了一个 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/