IDispatch* pDisp = NULL;
IDispatch* pDisp2 = NULL;
IHTMLDocument2 *pHtmlDoc2 = NULL;
IHTMLElementCollection* pCol;
IHTMLMetaElement *pMeta = NULL;
BSTR bUrl = NULL;
BSTR bstr = NULL;
try {
if ((pDisp = m_WebBrowser.get_Document()) &&
SUCCEEDED(pDisp->QueryInterface(IID_IHTMLDocument2,(PVOID*)&pHtmlDoc2))
&& SUCCEEDED(pHtmlDoc2->get_all( &pCol)) && pCol
)
{
//检查域名是www.test.com或www.test2.com的域名下, meta标签是否有myflag标记, 如果有则认为是正确的网页bIsGoodWebPage为TRUE
pHtmlDoc2->get_URL(&bUrl);
if(wcsstr((const wchar_t*)bUrl, L"www.test.com") == NULL
&& wcsstr((const wchar_t*)bUrl, L"www.test2.com") == NULL)
{
bIsGoodWebPage = TRUE;
}
else
{
long eleLen = ;
pCol->get_length(&eleLen);
IHTMLMetaElement* pMetaElement = NULL;
VARIANT varIndex;
HRESULT hr;
for( int i=; i< eleLen; i++)
{
VARIANT var2;
varIndex.vt = VT_UINT;
varIndex.lVal = i;
VariantInit( &var2 );
hr = pCol->item(varIndex, var2, &pDisp2);
hr = pDisp2->QueryInterface(IID_IHTMLMetaElement,(void**)&pMeta);
if( hr == S_OK)
{
if( SUCCEEDED(pMeta->get_httpEquiv(&bstr)) )
{
if(!wcscmp((const wchar_t*)bstr,L"keywords"))
{
bstr = NULL;
if(SUCCEEDED(pMeta->get_content(&bstr)))
{
if(!wcscmp((const wchar_t*)bstr, L"myflag"))
{
bIsGoodWebPage = TRUE;
break;
}
}
}
}
}
}
}
}
}
catch (...)
{
WBTRACE("Error\r\n");
}
SAFE_RELEASE(pMeta);
SAFE_RELEASE(pDisp2);
SAFE_RELEASE(pHtmlDoc2);
SAFE_RELEASE(pDisp);

MFC webbrowser读取文档的meta分析的更多相关文章

  1. 解决Spring的java项目打包后执行出现“无法读取方案文档...“、“原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是...”问题

    问题 一个用Spring建的java项目,在Eclipse或idea中运行正常,为什么打包后运行出现如下错误呢? 2019/07/10/19:04:07 WARN [main] org.springf ...

  2. MFC设置单文档保存格式以及标题

    在使用MFC编写单文档程序时,有时候需要将编辑的内容序列化为文件,使该文件可以直接以自己的程序打开,这时候需要在保存时将文件后缀改为我们想要的格式. 步骤 打开String Table,找到IDR_M ...

  3. 12.1 文档相关 Webbrowser 该文档已被修改,是否保存修改结果

       附件:http://files.cnblogs.com/xe2011/Webbrowser_Document_IsModified.rar   该文档已被修改,是否保存修改结果?是:保存修改结果 ...

  4. golang mongodb (mgo)插入或读取文档的字段值为空(nil)问题解决

    问题描述 当使用mgo操作mongodb时,遇到数据插入正常,但是在数据库查看时只能看到objectid被插入了:读取的时候,可以查询到记录,但是读入对象时,却所有的值均为0或者空的情况. mongo ...

  5. 关于css浮动框是否脱离文档流的分析

    在了解浮动属性之前,首先我们先了解一下html中关于display属性的相关知识. display属性常用的有inline, block, inline-block. inline也就是内联的意思. ...

  6. 基于MFC的单文档,多文档,对话框应用程序

    从类的角度区分: 基于对话框(3个类): CAboutDlg 程序名App 程序名Dlg 单文档(5个类): CAboutDlg CMainFrame 程序名App 程序名Doc 程序名View 多文 ...

  7. MFC 修改 单文档 SDI 窗体 标题

    程序主窗口标题栏的一般形式为: 文档标题—主窗口标题 1.修改文档标题 修改CExamDoc::onNewDocument()函数为: BOOL CExamDoc::OnNewDocument() { ...

  8. MFC 视图、文档、框架(通讯)

    CMainFrame * pMainWnd=(CMainFrame*)AfxGetApp()->m_pMainWnd;//主框架 CChildFrame * pChild = (CChildFr ...

  9. Arc Engiene读取文档的属性

    设计界面 创建类 代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

随机推荐

  1. CSU 1325 莫比乌斯反演

    题目大意: 一.有多少个有序数对(x,y)满足1<=x<=A,1<=y<=B,并且gcd(x,y)为p的一个约数: 二.有多少个有序数对(x,y)满足1<=x<=A ...

  2. Invoke-WebRequest Invoke-RestMethod 乱码研究

    powershell Invoke-WebRequest Invoke-RestMethod 乱码 encoding sharset CharacterSet Invoke-WebRequest和In ...

  3. IE下只读INPUT键入BACKSPACE 后退问题(readonly='true')

    在IE下,如果在readonly的input里面键入backspace键,会触发history.back(), 用以下jquery代码修正之 $("input[readOnly]" ...

  4. 谷歌浏览器中安装.crx扩展名的离线Chrome插件

    一.本地拖放安装 1.下载扩展程序/脚本程序至本地计算机: 2.将其直接拖拽到浏览器的“扩展程序”(chrome://chrome/extensions/)页面. 二.解决“只能通过Chrome网上应 ...

  5. UIRefreshControl自动刷新

    不知道UIRefreshController是什么的朋友可以参考iOS6新特征:UIRefreshControl[下拉刷新]使用示例 一文了解这是什么,这里只提怎么使用代码的方式触发UIRefresh ...

  6. Python显示函数调用堆栈

    网上找到如下几个思路: 1.用inspect模块 2.用sys._getframe模块 3.用sys.exc_traceback,先抛一个异常,然后抓出traceback #!/usr/bin/env ...

  7. 电子词典的相关子函数db.c程序

    整个电子词典是分块做的:包含的Dic_Server.c,Dic_Client.c,db.c,query.c,xprtcl.c,dict.h,xprtcl.h,dict.txt(单词文件) 下面是db. ...

  8. iOS真机UI调试利器——Reveal

    做iOS的开发,UI是非常非常重要的一环.调试时我们一般用模拟器,提交前用真机做测试.用模拟器来调试UI效果虽然快捷方便,但有时仍然希望有更强大 的工具来帮助分析UI,尤其是专注在UI的效果调试时.最 ...

  9. zookeeper命令行(zkCli.sh&zkServer.sh)使用及四字命令

    zookeeper提供了很多方便的功能,方便我们查看服务器的状态,增加,修改,删除数据(入口是zkServer.sh和zkCli.sh). 还提供了一系列四字命令,方便我们跟服务器进行各种交互,来确认 ...

  10. LintCode Validate Binary Search Tree

    Validate Binary Search Tree Given a binary tree, determine if it is a valid binary search tree (BST) ...