监视IE中ActiveX控件中的用户操作

时间:2012-05-21 21:26:38

标签: internet-explorer activex bho

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

2 个答案:

答案 0 :(得分:0)

ActiveX控件托管在Object元素中。您可以使用IE DOM apis来获取Object元素,但是在该层之外它对您来说变得不透明。除非ActiveX控件本身暴露某种自动化,否则它是本机代码黑盒子。

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

答案 1 :(得分:0)

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

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