• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

获取其它进程中的Web Browser中的HTML源码

c++ 搞代码 7年前 (2018-08-07) 150次浏览 已收录 0个评论

 HWND H1,H2,H3,H4,hw;
H1=H2=H3=H4=hw=NULL;
H1=::FindWindow("TForm1",NULL);
if (H1) H2=::FindWindowEx(H1,NULL,"Shell Embedding",NULL);
if (H2) H3=::FindWindowEx(H2,NULL,"Shell DocObject View",NULL);
if (H3) H4=::FindWindowEx(H3,NULL,"Internet Explorer_Server",NULL);

if (H4) hw=H4;
else
{

http://www.gaodaima.com/?p=65478获取其它进程中的web Browser中的html源码

  AfxMessageBox("No Found the Dialog with IE!");
  return;
}

IHTMLDocument2 *pHTMLDocument=NULL;
DWORD lRes;
HRESULT hres;

UINT MSG = RegisterWindowMessage("WM_HTML_GETOBJECT");
SendMessageTimeout(hw, MSG, 0, 0, SMTO_ABORTIFHUNG, 1000, &lRes);

hres=ObjectFromLresult(lRes,__uuidof(IHTMLDocument2),0,(void**)&pHTMLDocument);

if(hres==S_OK)
{
  IPersistStreamInit *pPSI=NULL;
  IStream *pStream=NULL;
  HGLOBAL  hHTMLText;
    
  if  (FAILED(pHTMLDocument->QueryInterface(&pPSI))) return;
   
  hHTMLText = GlobalAlloc(GMEM_FIXED, 65534);
  CreateStreamOnHGlobal(hHTMLText, TRUE, &pStream);
  pPSI->Save(pStream, FALSE);

  char *pText = (char*)hHTMLText;
  FILE *f=fopen("data_from_explorer.txt","w");
  fwrite(pText,1,strlen(pText),f);
  fclose(f);
  AfxMessageBox("the source codes Saved in data_from_explorer.txt");

  pStream->Release();
  pPSI->Release();
}

欢迎大家阅读《获取其它进程中的Web Browser中的HTML源码》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:获取其它进程中的Web Browser中的HTML源码

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址