【问题标题】:Attach Native Client Module into google chrome at run-time在运行时将本机客户端模块附加到谷歌浏览器
【发布时间】:2014-03-25 19:23:55
【问题描述】:

我有一个设置钩子的工具。它是由C++构建的,钩子代码实际上是在浏览器进程中运行的。对于IE来说,通过mshtml.dll暴露的API/Interface获取文档然后获取整个DOM是非常容易的。

现在,我必须让这个工具适用于谷歌浏览器,就像它适用于 IE 一样。我有几个问题:

  1. Google Chrome 是否公开了我可以从 C++ 获得的任何接口。
  2. 由于我无法找到回答 #1 问题的好来源,我考虑构建一个 NaCl 模块。该模块将与我的 C++ 模块交互,并将与 Google Chrome 交互以获取 DOM。这里的挑战是如何将 NaCl 模块附加到每个 Google Chrome 进程中。我在问类似于LoadLibrary API 在加载 DLL 时使用的方法。因为我已经在每个 Google Chrome 进程中运行了本机代码。
  3. 如果 #2 不可行,是否可以为 Google Chrome 构建扩展程序?

感谢您的帮助。

【问题讨论】:

    标签: c++ google-chrome google-chrome-extension hook google-nativeclient


    【解决方案1】:

    在我看来,你会想要创建 chrome 扩展。使用扩展,您可以使用 JavaScript 直接与 DOM 交互。您还可以将您的 C++ 代码构建为 NaCl 模块,该模块可以成为您的扩展的一部分。 JavaScript 和 C++ 代码通信的唯一方式是通过 PostMessage 接口。无法从 C++ 直接访问 DOM。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 2011-10-02
      • 2016-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多