0

我需要从外部进程(EXE 应用程序)读取“Internet Explorer 8”中显示的网页的“内存中”HTML。

更简单地说,假设您在浏览器中加载一个页面,其中显示了一些“输入文本”,然后您填写输入并“在”提交页面之前我需要切换到我的 EXE 应用程序并读取填写的值输入。

我尝试了 SPY++,但网页中的任何 INPUT 都没有“类”(就像普通 Win32 应用程序中的文本框一样),并且浏览器的整个客户区域显示为“Internet Explorer_Server”类。

我已经这样做了很多次来集成应用程序之间的数据,但总是针对 Win32 应用程序,这是我第一次尝试从浏览器读取数据,我真的很茫然。

我唯一确定的想法是我需要以某种方式访问​​正在运行的浏览器的实际 DOM。

请注意,我不能使用某种 Web 控件来加载页面然后解析,因为加载的页面将为空,而我需要的是用户在提交页面之前输入的数据。

任何从哪里开始寻找的建议将不胜感激:)

4

1 回答 1

1

您不能使用HWNDs 访问 IE 浏览器窗口的内容,因为没有。从窗口的开始,您可以HWND从中提取一个界面,然后根据需要使用IE 的 DOM 界面来访问和操作浏览器内容。"Internet Explorer_Server"IHTMLDocument2

如何从 HWND 获取 IHTMLDocument2

接口和脚本对象

IHTMLDocument2 接口

于 2012-01-12T05:51:11.337 回答