如何取得浏览器中的文字? 浏览器窗口的hwnd已得到,现在想知道如何取得浏览器中的文字?然后查找那些文字看是否有色情描述。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给个例子,读取文字的,如果要读取代码,那你就将下面的outerText改为outerHTML,如果有问题就联系我:function GetIETextFromHWND(hWnd: HWND): String;var IE:IWebBrowser2; hInst: THandle; lRes: Cardinal; MSG: Integer; pDoc: IHTMLDocument2; ObjectFromLresult: TObjectFromLresult; ret:HRESULT;begin Result:=''; ret:=S_OK; if (hWnd<=0) then exit; hInst := LoadLibrary('Oleacc.dll'); if (hInst>0) then try @ObjectFromLresult := GetProcAddress(hInst, 'ObjectFromLresult'); MSG := RegisterWindowMessage('WM_HTML_GETOBJECT'); SendMessageTimeOut(hWnd, MSG, 0, 0, SMTO_ABORTIFHUNG, 1000, lRes); ret := ObjectFromLresult(lRes, IID_IHTMLDocument2, 0, pDoc); if ret = S_OK then begin (pDoc.parentWindow as IServiceprovider).QueryService(IWebbrowserApp, IWebbrowser2, IE); Result:=(IE.Document as IHTMLDocument2).body.innerText; end; finally FreeLibrary(hInst); end;end; type TObjectFromLResult = function(LRESULT: lResult; const IID: TIID; WPARAM: wParam; out pObject): HRESULT; stdcall; 向专家提问:如何比较两个delphi中的bmp文件是否相同? dbgrid问题 紧急求助:ADO查询ACCESS里LIKE的问题 如何用delphi7开发websphere MQ的客户端程序? 怎样用idftp下载文件,下载后删除服务器上的这个文件 将汉字转换成编码,将编码转成汉子 超奇怪的界面兼容问题?Win98/Win2000 呵呵,再来个娱乐的,周末嘛 dbExpress兼容性问题。 怎么去除字符串中的换行? 如何合并查询结果集 现在初学Delphi,应如何跟得上形势?
function GetIETextFromHWND(hWnd: HWND): String;
var
IE:IWebBrowser2;
hInst: THandle;
lRes: Cardinal;
MSG: Integer;
pDoc: IHTMLDocument2;
ObjectFromLresult: TObjectFromLresult;
ret:HRESULT;
begin
Result:='';
ret:=S_OK;
if (hWnd<=0) then
exit;
hInst := LoadLibrary('Oleacc.dll');
if (hInst>0) then
try
@ObjectFromLresult := GetProcAddress(hInst, 'ObjectFromLresult');
MSG := RegisterWindowMessage('WM_HTML_GETOBJECT');
SendMessageTimeOut(hWnd, MSG, 0, 0, SMTO_ABORTIFHUNG, 1000, lRes);
ret := ObjectFromLresult(lRes, IID_IHTMLDocument2, 0, pDoc);
if ret = S_OK then
begin
(pDoc.parentWindow as IServiceprovider).QueryService(IWebbrowserApp, IWebbrowser2, IE);
Result:=(IE.Document as IHTMLDocument2).body.innerText;
end;
finally
FreeLibrary(hInst);
end;
end;
TObjectFromLResult = function(LRESULT: lResult; const IID: TIID; WPARAM: wParam; out pObject): HRESULT; stdcall;