DOWNLOAD.H
//=------------------------------------------------------------------------= 
// Download.h 
//=------------------------------------------------------------------------= 
// Copyright 1992-1997 Microsoft Corporation.  All Rights Reserved. 
// 
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF 
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO 
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A 
// PARTICULAR PURPOSE. 
//=--------------------------------------------------------------------------= 
// 
// Definition of the CBindStatusCallback class 
// 
 
#ifndef _DOWNLOAD_H_ 
#define _DOWNLOAD_H_ 
 
#include <urlmon.h> 
 
class CBindStatusCallback : public IBindStatusCallback  
{ 
 
  public: 
    // IUnknown methods 
    STDMETHODIMP    QueryInterface(REFIID riid,void ** ppv); 
    STDMETHODIMP_(ULONG)    AddRef()    { return m_cRef++; } 
    STDMETHODIMP_(ULONG)    Release()   { if (--m_cRef == 0) { delete this; return 0; } return m_cRef; } 
 
    // IBindStatusCallback methods 
    STDMETHODIMP    OnStartBinding(DWORD grfBSCOption, IBinding* pbinding); 
    STDMETHODIMP    GetPriority(LONG* pnPriority); 
    STDMETHODIMP    OnLowResource(DWORD dwReserved); 
STDMETHOD(OnProgress)(  
            /* [in] */ ULONG ulProgress, 
            /* [in] */ ULONG ulProgressMax, 
            /* [in] */ ULONG ulStatusCode, 
            /* [in] */ LPCWSTR szStatusText); 
    STDMETHODIMP    OnStopBinding(HRESULT hrResult, LPCWSTR szError); 
    STDMETHODIMP    GetBindInfo(DWORD* pgrfBINDF, BINDINFO* pbindinfo); 
    STDMETHODIMP    OnDataAvailable(DWORD grfBSCF, DWORD dwSize, FORMATETC *pfmtetc, 
                        STGMEDIUM* pstgmed); 
    STDMETHODIMP    OnObjectAvailable(REFIID riid, IUnknown* punk); 
 
    // constructors/destructors 
    CBindStatusCallback(CMainFrame* pMDIframewnd); 
    ~CBindStatusCallback(); 
 
    // data members 
 DWORD           m_cRef; 
    IBinding*       m_pbinding; 
    IStream*        m_pstm; 
    DWORD           m_cbOld; 
CMainFrame*m_pMDIframwnd; 
 
}; 
 
#endif // _DOWNLOAD_H_