定制Internet Explorer下载管理器

Implementing a Custom Download Manager

实现一个定制的下载管理器

The ability to implement a custom download manager was introduced in Microsoft Internet Explorer 5.5. This feature enables you to extend the functionality of Windows Internet Explorer and WebBrowser applications by implementing a Component Object Model (COM)
object to handle the file download process.

从IE5.5开始,定制下载管理器被引入。这允许你通过实现一个COM对象来处理下载过程

By implementing a custom download manager, your WebBrowser application can be extended to display a custom user interface. You could, for example, create a download manager that enables you to view MPEG files or launch applications.

通过实现一个定制的下载管理器,你的WebBrower应用程序可以被扩展,以显示一个定制的用户界面。比如,你可以创建你一个下载管理器来查看MPEG图片或者启动应用程序

A download manager is implemented as a COM object that exposes the IUnknown and IDownloadManager interface. IDownloadManager has only one method, IDownloadManager::Download, which is called by Internet Explorer or a WebBrowser application to download a file.
When a file is selected for download in a WebBrowser application, the custom download manager is accessed in one of two ways.

下载管理器以com对象方式实现,暴露IUnknown和IDownloadManager接口。IDownloadManager只有一个方法,IDownloadManager::Download,该方法在WebBrower下载一个文件时候被调用。当一个文件被选中下载,定制的下载管理器用以下梁总方法被访问。

If the IServiceProvider::QueryService method of the IServiceProvider interface is implemented, the WebBrowser application first calls IServiceProvider::QueryService to retrieve an IDownloadManager interface pointer. The following example shows a possible implementation
of the IServiceProvider::QueryService method.

如果IServiceProvider::QueryService被实现,WebBrower首先调用IServiceProvider::QueryService获取IDownloadManager接口。如下实例显示可能的实现。

STDMETHODIMP CServiceProvider::QueryService(REFGUID guidService,

REFIID riid,

void **ppv)

{

HRESULT hr = E_NOINTERFACE;

if (guidService == SID_SDownloadManager && riid == IID_IDownloadManager)

{

// Create new CDownloadMgr object using ATL.

CComObject<CDownloadMgr>* pDownloadMgr;

hr = CComObject<CDownloadMgr>::CreateInstance(&pDownloadMgr);

// Query the new CDownloadMgr object for IDownloadManager interface.

hr = pDownloadMgr->QueryInterface(IID_IDownloadManager, ppv);

}

return hr;

}

For Internet Explorer 6 and later, if the WebBrowser application does not implement the IServiceProvider::QueryService method, or when using Internet Explorer itself for which IServiceProvider::QueryService cannot be implemented, the application checks for
the presence of a registry key containing the class identifier (CLSID) of the download manager COM object. The CLSID can be provided in either of the following registry values.

对于IE6及更新版本,如果WebBrower应用程序没有实现IServiceProvider::QueryService,或者当用户使用IE自身,其IServiceProvider::QueryService不能被实现,WebBrower核查下载管理COM对象是否在注册表中存在。CLSID可以通过下面两者之一方式提供

HKEY_LOCAL_MACHINE

Software

Microsoft

Internet Explorer

DownloadUI

HKEY_CURRENT_USER

Software

Microsoft

Internet Explorer

DownloadUI

If the application cannot locate a custom download manager the default download user interface is used.

如果应用程序不能定位到下载管理器,默认下载将被使用

时间: 2024-11-06 07:27:04

定制Internet Explorer下载管理器的相关文章

如何使用BHO定制你的Internet Explorer浏览器

一.简介 有时,你可能需要一个定制版本的浏览器.在这种情况下,你可以自由地把一些新颖但又不标准的特征增加到一个浏览器上.结果,你最终有的只是一个新但不标准的浏览器.Web浏览器控件只是浏览器的分析引擎.这意味着仍然存在若干的与用户接口相关的工作等待你做――增加一个地址栏,工具栏,历史记录,状态栏,频道栏和收藏夹等.如此,要产生一个定制的浏览器,你可以进行两种类型的编程――一种象微软把Web浏览器控件转变成一个功能齐全的浏览器如Internet Explorer:一种是在现有的基础上加一些新的功能

编写IE插件的框架Add-in Express for Internet Explorer and .net 下载及使用方法

原文来自龙博方案网http://www.fanganwang.com/product/1362转载请注明出处 Add-in Express for Internet Explore 是第一个适用于开发 IE 附件的可视化工具. 它完全支持IE 扩展 API控件,并且使得 add-on 开发和配置更方便. 可视化设计: 你只需要写功能代码Add-in Express 完全基于 Rapid Application Development 方法,并且使得你可以通过一些点击来开发专业的 Internet

How to Uninstall Internet Explorer 11 for Windows 7

Internet Explorer 11 is the newest version of Microsoft's web browser, but not everyone is a fan. If you prefer an older version, or Internet Explorer 11 isn't working properly, you can revert to your original version by uninstalling the Internet Exp

CVE-2010-0483分析 Microsoft Internet Explorer 6/7/8 - &#39;winhlp32.exe&#39; &#39;MsgBox()&#39; Remote Code Execution

相关资料:https://www.exploit-db.com/exploits/11615/ 目的是为了了解漏洞执行的流程. 根据资料准备服务端环境: 用一台win7当做是服务器,需要在win7上共享一个文件夹用于客户端访问.我的测试环境共享的文件夹是www. (1)启用Guest来宾账户,共享文件夹时将Guest添加读权限.此时在win7本机上应能访问,但在局域网的XP虚拟机无法访问  \\192.168.0.11\www\ (2)运行 secpol.msc 打开本地安全策略->本地策略->

Internet Explorer 浏览器在同一时刻只能从同一域名下载两个文件。

Internet Explorer 浏览器在同一时刻只能从同一域名下载两个文件.至于原因请见 MSDN Blogs:<Internet Explorer and Connection Limits>,如何解除限制请见微软客户帮助与支持主页:<如何将 Internet Explorer 配置为可以同时进行两个以上的下载会话>.不管 Firefox 有多火,无可否认,IE 仍然是浏览器市场的老大.所以,在做系统架构时,不得不去考虑 IE  同时只能从同一域名下载两个文件的限制.如果超过

解决“Internet Explorer已对此页面进行了修改,已帮助阻止跨站点脚本。”的“问题”

最近一直对网络安全知识比较感兴趣,目前在看的书是网上推荐的<Web应用安全权威指南>.这本书提供下载一个虚拟机镜像,运行这个虚拟机可以在电脑浏览器上做书中的实验. 第66页涉及到一个XSS的实验,正常的效果是执行JavaScript,弹出一个对话框.我在照做的时候IE提示"Internet Explorer已对此页面进行了修改,已帮助阻止跨站点脚本."(如图1). 我先将地址加入可信站点,没有作用.这时想到以前给公司设置OA系统时,不但需要加可信站点,还需要更改"

C# winform webbrowser如何指定内核为IE11? 输出 this.webbrowser.Version 显示版本是IE11的,但实际版本不是啊! 网上打的修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULA

最佳答案 1)假设你应用程序的名字为MyApplication.exe 2)运行Regedit,打开注册表,找到 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION 3)添加以下项 IE各版本的值如下: 11001 (0x2EDF) Internet Explorer 11. Webpages are displayed

Internet Explorer 11 Enterprise Mode 详解

白驹过隙,已经三月未能及时更新博文,今天为大家分享有关IE 11 Enterprise Mode(企业模式)两个章节内容,之前看到好多群里讨论有关IE11企业模式的问题,这里简单做一下汇总,第一章为IE11企业模式详解,第二章为企业模式排错,希望对大家理解IE 11 Enterprise Mode的含义及企业批量开启及排错有帮助,谢谢. 一.IE 11企业模式简介: 企业模式是可以在 Windows 8.1 更新和 Windows 7 设备的 Internet Explorer 11 上运行的一

关于windows 下每次打开IE 8都弹出欢迎使用Internet Explorer 8 弹窗的关闭方法

今天笔者在安装完windows 操作系统后,发现了一个问题,即每次打开IE 8浏览器,都会弹出一个欢迎界面: 弹窗标题为:设置windows Internet Explorer,具体内容如下图所示: 经过研究发现,最终还是找到关闭弹窗信息的方法,具体步骤如下: 1.运行:gpedit.msc进入组策略管理 2.找到,计算机配置--管理模板--Windows 组件--Internet Explorer,下的[阻止执行首次运行自定义设置] 3.右键编辑,将此项配置成 已启动,选择所需的选项处设置为: