【问题标题】:Monitor user actions in ActiveX controls inside IE监视 IE 内 ActiveX 控件中的用户操作
【发布时间】:2012-05-21 21:26:37
【问题描述】:

我的任务是在 IE 内的第三方 ActiveX 控件中记录所有用户操作。操作是在文本框中输入符号、单击按钮等。 所以我创建了一个 BHO 并找到了一个具有给定 classid 的 IHTMLElement。 解决此任务的下一步是什么? 我使用 C#。

【问题讨论】:

    标签: internet-explorer activex bho


    【解决方案1】:

    ActiveX 控件位于 Object 元素中。您可以使用 IE DOM api 来访问 Object 元素,但在该层之外它对您来说变得不透明。除非 ActiveX 控件本身公开了某种自动化,否则它就是本机代码黑盒。

    在原生控件中有拦截点击和按键的方法,主要是使用子类或钩子。您可以使用 spy++ 来检查窗口层次结构,并使用 FindWindow 的托管等效项来查找这些窗口。

    【讨论】:

      【解决方案2】:

      正如 jeffamaphone 所说,Spy++ 能够捕获文本框的内容。为此,Spy++ 实际上是将自己的 DLL (spyxxhk.dll) 注入到 IE 中,以便能够检索控件的内容(这就是启动时请求管理权限的原因)。一旦注入 IE 进程,它就能够挂钩 IE 进程中存在的任何 DLL(也称为 ActiveX 控件)。

      要执行相同类型的操作(捕获、记录等),您“只需”开发自己的注入引擎并注册它,以便在 IE 启动时自动启动。网络上有许多与这些注入机制相关的信息。这里以url 开头。

      【讨论】:

        猜你喜欢
        • 2023-03-14
        • 1970-01-01
        • 2011-10-02
        • 1970-01-01
        • 2013-09-29
        • 1970-01-01
        • 2011-10-20
        • 2012-03-25
        • 1970-01-01
        相关资源
        最近更新 更多