1 / 8
文档名称:

IE控件高级使用方法.doc

格式:doc   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

IE控件高级使用方法.doc

上传人:xxj16588 2016/7/20 文件大小:0 KB

下载得到文件列表

IE控件高级使用方法.doc

文档介绍

文档介绍:IE 控件高级使用方法发布日期: 2005-05-18 10:05 浏览次数: 435 次标签: COM 文章评分: 操作: 下载源文件打印杨老师称号: 未设置简介: ... 文章概要: 本文介绍如下内容:1、如何显示内存中的 HTML 网页;2、如何屏蔽掉鼠标右键的上下文菜单;3、如何扩展 HTML 中的脚本(external) 对象;4、如何显示 HTML 样式的对话窗;5、如何执行 HTML 脚本; 本文介绍如下内容 1 、如何显示内存中的 HTML 网页; 2 、如何屏蔽掉鼠标右键的上下文菜单; 3 、如何扩展 HTML 中的脚本(external) 对象; 4 、如何显示 HTML 样式的对话窗; 5 、如何执行 HTML 脚本; 一、如何显示内存中的 HTML 网页或者因为网页保密的考虑; 或者因为软件分发的考虑, 有的时候就需要让 IE或 IE 浏览器控件显示内存或资源中的 HTML 网页。在 MFC CHtmlView::LoadFromResource() 可以显示程序资源中的 HTML 内容。我们都知道 MFC 的 CHtmlView 其实是对 IWebBrowser2 的一个包装, 但是在 IWebBrowser2 中却没有类似的方法。那么它是如何实现的那?步骤如下: 1、首先通过 IWebBrowser2::Navigate2() 显示一个网页, 其目的是产生有效的对象,从而得到 IHTMLDocument2 接口; 2、 IWebBrowser2::get_Document() 得到 IHTMLDocument2 接口指针; 3、 IHTMLDocument2::QueryInterface() 得到 IPersistStreamInit 接口指针; 4、 IPersistStreamInit::InitNew() 初始化接口对象; 5、 IPersistStreamInit::Load() 装载内存中的 HTML 数据流(IStream *); 内存指针转换为流的方法是: I、 GlobalAlloc() 申请内存; II、复制 HTML 字符串内容到上述的内存中; III 、 CreateStreamFromHGlobal() 转换内存为 IStream 指针; 原理性代码如下: view sourceprint? 01.// 显示一个空白网页 ( &CComVariant(_T("about:blank")),NULL,NUL L,NULL,NULL); 03.// 得到 IHTMLDocument2 指针 omPtr< IDispatch > spDoc(()); 05.// 得到 IPersistStreamInit 指针 omQIPtr< IPersistStreamInit, &IID_IPersistStreamInit > spPSI( spDoc ); 07.// 申请内存, 复制 HTML 字符串 lpMem = (LPTSTR)::GlobalAlloc( GPTR, ::lstrlen( lpHtml )+1 ); ( lpMem, " 10. 11. xxx xxx" ); 12.//