Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/128.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 用C++;_C++_Internet Explorer 9_Hook_Direct2d_Directwrite - Fatal编程技术网

C++ 用C++;

C++ 用C++;,c++,internet-explorer-9,hook,direct2d,directwrite,C++,Internet Explorer 9,Hook,Direct2d,Directwrite,我需要从IE9中捕获文本(最好是当前显示的文本,而不是完整的HTML文档)。IE的早期版本使用TextOut,您可以使用API监视器清楚地看到文本。现在IE 9使用Direct2D/DirectWrite呈现文本,因此没有可见文本。建议您可以挂接到DWrite.dll,并通过CreateTextLayout获取文本,但这永远不会被调用。我假设在此呈现阶段之前,必须在MSHTML.dll中截取文本 如有任何帮助,请获取文本 非常感谢。您可以从IE com对象获取IHTMLDocument接口,使用

我需要从IE9中捕获文本(最好是当前显示的文本,而不是完整的HTML文档)。IE的早期版本使用TextOut,您可以使用API监视器清楚地看到文本。现在IE 9使用Direct2D/DirectWrite呈现文本,因此没有可见文本。建议您可以挂接到DWrite.dll,并通过CreateTextLayout获取文本,但这永远不会被调用。我假设在此呈现阶段之前,必须在MSHTML.dll中截取文本

如有任何帮助,请获取文本


非常感谢。

您可以从IE com对象获取IHTMLDocument接口,使用get_innerText函数获取文本。谢谢,我的目标是在输入文本时抓取文本,或者仅抓取屏幕上的文本。我假设文本在用DirectX呈现之前由MSHTML.dll保存和准备,但我找不到任何有关这方面的信息,也找不到连接到MSHTML.dll以获取此文本的信息。根据您的建议,我已使用IHTMLDocument获得了文本。从我今天的测试中,我是否正确地认为没有任何方法可以获取屏幕上的元素子集?我不知道IHTMLDocument中有任何函数可以将屏幕上的文本提取为子集,但我确实遇到了一种使用IViewObject接口将屏幕上的内容提取为位图的方法。是的,谢谢,我也看到了那个链接,但我需要OCR。我已经尝试了几种方法,但仅仅获得屏幕上的文本却没有成功。谢谢你的帮助。