听取Internet Explorer下载事件

时间:2011-05-04 22:06:39

标签: c# internet-explorer

我需要在C#和VS2010中编写一个应用程序,它可以从Internet Explorer监听下载事件并捕获文件URL以将其添加到某个数据库。

我唯一的问题是如何实现实际捕获该事件的接口。

为了构建或实现这样的功能,我需要什么?

寻找“免费下载管理器或FDM软件”的功能,每次在Internet Explorer上开始下载时,都会弹出一个“FDM”窗口,其中包含下载的URL。

2 个答案:

答案 0 :(得分:2)

您需要浏览器帮助程序对象。这些是COM组件,因此您可以使用C#开发它们,但需要将它们公开给COM。

Here是C#中COM编程的入门读物。

更新

似乎唯一的方法可以在C ++中编写浏览器帮助对象。看看here

答案 1 :(得分:1)

您可以使用以下内容:

    public class BHO:IObjectWithSite
    {
        private WebBrowser webBrowser;

        public int SetSite(object site){
                webBrowser = (WebBrowser)site;
                webBrowser.DownloadComplete +=new DWebBrowserEvents2_DownloadCompleteEventHandler(webBrowser_DownloadComplete);
       (...)
   }