Click here to Skip to main content
13,052,163 members (55,625 online)
Click here to Skip to main content
Add your own
alternative version


96 bookmarked
Posted 3 Mar 2000

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

    You may also be interested in...

    Comments and Discussions

    GeneralRe: ATL downloading Pin
    pjnaughter7-Jan-04 2:46
    memberpjnaughter7-Jan-04 2:46 
    GeneralBinary downloads Pin
    Chris Losinger14-Dec-03 16:59
    memberChris Losinger14-Dec-03 16:59 
    GeneralRe: Binary downloads Pin
    pjnaughter14-Dec-03 22:49
    memberpjnaughter14-Dec-03 22:49 
    GeneralWhen download is cancelled the dialog still shows Aborting and dose'nt abort Pin
    Vikrant Vikrant24-Sep-03 4:44
    memberVikrant Vikrant24-Sep-03 4:44 
    GeneralRe: When download is cancelled the dialog still shows Aborting and dose'nt abort Pin
    pjnaughter24-Sep-03 5:47
    memberpjnaughter24-Sep-03 5:47 
    Questionwhich size of chunks in InternetReadFile is the safest best? Pin
    Valera2411761-Apr-03 3:24
    memberValera2411761-Apr-03 3:24 
    AnswerRe: which size of chunks in InternetReadFile is the safest best? Pin
    pjnaughter1-Apr-03 9:31
    memberpjnaughter1-Apr-03 9:31 
    Generalresuming download Pin
    Parasuraman SundarRajan & J. Naresh Kumar8-Apr-02 20:39
    memberParasuraman SundarRajan & J. Naresh Kumar8-Apr-02 20:39 
    Hi Mike,
    How to make it support download resuming. Though the server supports download resuming, what necessary change has to be made in the client to handle it. Kindly help me. Thank you.

    GeneralRe: resuming download Pin
    pjnaughter10-Jan-03 10:23
    memberpjnaughter10-Jan-03 10:23 
    GeneralProgressBar is not working properly Pin
    Anonymous5-Mar-02 15:37
    memberAnonymous5-Mar-02 15:37 
    GeneralRe: ProgressBar is not working properly Pin
    pjnaughter10-Jan-03 10:25
    memberpjnaughter10-Jan-03 10:25 
    GeneralRe: ProgressBar is not working properly Pin
    Xenion28-Jun-03 3:24
    memberXenion28-Jun-03 3:24 
    GeneralRe: ProgressBar is not working properly Pin
    pjnaughter28-Jun-03 4:38
    memberpjnaughter28-Jun-03 4:38 
    GeneralRe: ProgressBar is not working properly Pin
    pjnaughter29-Jun-03 2:17
    memberpjnaughter29-Jun-03 2:17 
    Generalwonderful job,but small problem Pin
    marutis3-Mar-02 22:21
    membermarutis3-Mar-02 22:21 
    GeneralDownloading only a part of a file Pin
    Arkadi Stephan11-Nov-01 12:59
    memberArkadi Stephan11-Nov-01 12:59 
    GeneralRe: Downloading only a part of a file Pin
    pjnaughter10-Jan-03 10:26
    memberpjnaughter10-Jan-03 10:26 
    GeneralNew Version Pin
    Darroll Walsh17-Sep-01 11:47
    memberDarroll Walsh17-Sep-01 11:47 
    QuestionSame class without the dialog? Pin
    Anonymous26-Jul-01 8:11
    memberAnonymous26-Jul-01 8:11 
    AnswerRe: Same class without the dialog? Pin
    pjnaughter10-Jan-03 10:28
    memberpjnaughter10-Jan-03 10:28 
    GeneralMinor bug in Authentication code Pin
    Jan Bares23-Jul-01 1:55
    memberJan Bares23-Jul-01 1:55 
    GeneralHTTPS Pin
    Anonymous29-Jun-01 3:16
    memberAnonymous29-Jun-01 3:16 
    GeneralCannot download EXE and DLL files Pin
    Rajneesh Sehgal18-Jan-01 6:37
    memberRajneesh Sehgal18-Jan-01 6:37 
    GeneralRe: Cannot download EXE and DLL files Pin
    pjnaughter10-Jan-03 10:31
    memberpjnaughter10-Jan-03 10:31 
    GeneralRe: Cannot download EXE and DLL files Pin
    Anonymous10-Jan-03 16:32
    sussAnonymous10-Jan-03 16:32 

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

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

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