Click here to Skip to main content
Click here to Skip to main content

CHttpDownloadDlg v1.03

, 3 Mar 2000
Rate this:
Please Sign up or sign in to vote.
A dialog implementation that performs HTTP downloads.
  • Download source files - 42 Kb
  • Sample Image - DownloadDlg.gif


    Welcome to CHttpDownloadDlg, an MFC dialog which performs HTTP downloads similar to the Internet Explorer download dialog as shown above.

    Contacting the Author


    V1.0 (14 November 1999)
    • First public release.

    V1.01 (15 November 1999)

    • Updated documentation to refer to what rc resources are needed by the class.
    • Renamed all resources used from ASYNC_DOWLOAD to include HTTPDOWNLOAD.
    • Now handles HTTP error 407 (Proxy Authentication) and HTTP error 401 (Server Authentication). You are prompted with a password dialog when either of these forms of authentication are required.
    • Sample program now allows you to specify the URL to download from as well as the file to download into and the username and password to connect with.
    • The download file is now deleted if the download was aborted or if some other error occurs during the download.
    • Parsing of URL will now work where "http://" is not explicitely specified.
    • Improved the general look and feel of the demo app and called it "HTML File Downloader".

    V1.02 (29 November 1999)

    • Fixed a number of compiler warnings and errors when used in VC++ 6.0.

    V1.03 (25 January 2000)

    • Fixed a problem where server authentication was not being detected correctly, while proxy authentication was being handled.
    • Updated the way and periodicity certain UI controls are updated during the HTTP download.


    To use CHttpDownloadDlg in your project simply include HttpDownloadDlg.cpp/.h from the test application in your application and #include "HttpDownloadDlg.h" in whichever files you want to use the class in. To bring up the dialog to download a specific file, just use some code like the following:

    CHttpDownloadDlg dlg;
    dlg.m_sURLToDownload = _T("");
    dlg.m_sFileToDownloadInto = _T("c:\\somfile.ext");
    if (dlg.DoModal() == IDOK)
       AfxMessageBox("File was downloaded successfully");

    You should also have a look at the CInetDownloadDlg::OnDownload() code in the sample application.

    Contacting the Author

    PJ Naughter
    25 January 2000


    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here


    About the Author

    PJ Naughter

    United States United States
    No Biography provided

    Comments and Discussions

    GeneralRe: ProgressBar is not working properly Pinmemberpjnaughter28-Jun-03 5:38 
    GeneralRe: ProgressBar is not working properly Pinmemberpjnaughter29-Jun-03 3:17 
    Generalwonderful job,but small problem Pinmembermarutis3-Mar-02 23:21 
    GeneralDownloading only a part of a file PinmemberArkadi Stephan11-Nov-01 13:59 
    GeneralRe: Downloading only a part of a file Pinmemberpjnaughter10-Jan-03 11:26 
    GeneralNew Version PinmemberDarroll Walsh17-Sep-01 12:47 
    QuestionSame class without the dialog? PinmemberAnonymous26-Jul-01 9:11 
    AnswerRe: Same class without the dialog? Pinmemberpjnaughter10-Jan-03 11:28 
    You should be able to achieve this affect by playing around with the visibility window atrribute of the dialog resource I use.
    GeneralMinor bug in Authentication code PinmemberJan Bares23-Jul-01 2:55 
    GeneralHTTPS PinmemberAnonymous29-Jun-01 4:16 
    GeneralCannot download EXE and DLL files PinmemberRajneesh Sehgal18-Jan-01 7:37 
    GeneralRe: Cannot download EXE and DLL files Pinmemberpjnaughter10-Jan-03 11:31 
    GeneralRe: Cannot download EXE and DLL files PinsussAnonymous10-Jan-03 17:32 
    GeneralI want to apply this class to another project.... but PinsussBruce Nam11-Apr-00 17:14 
    GeneralRe: I want to apply this class to another project.... but PinsussPJ Naughter16-May-00 14:52 
    GeneralRe: I want to apply this class to another project.... but Pinmembermindows11-Feb-03 14:34 
    GeneralRe: I want to apply this class to another project.... but Pinmemberpjnaughter12-Feb-03 0:51 

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    | Advertise | Privacy | Terms of Use | Mobile
    Web04 | 2.8.150123.1 | Last Updated 4 Mar 2000
    Article Copyright 2000 by PJ Naughter
    Everything else Copyright © CodeProject, 1999-2015
    Layout: fixed | fluid