cdlagent.h
Upload User: xhy777
Upload Date: 2007-02-14
Package Size: 24088k
Code Size: 2k
Category:

Windows Kernel

Development Platform:

Visual C++

  1. #ifndef _CDL_AGENT_HXX_INCLUDED
  2. #define _CDL_AGENT_HXX_INCLUDED
  3. class CDLAgentBSC;
  4. class CCDLAgent : public CDeliveryAgent,
  5.                   public CRunDeliveryAgentSink
  6. {
  7.     private:
  8.         virtual ~CCDLAgent();
  9.     
  10.     public:
  11.         CCDLAgent();
  12.     // virtual functions overriding CDeliveryAgent
  13.     public:
  14.         void        CleanUp();
  15.         HRESULT     AgentAbort(DWORD dwFlags);
  16.         HRESULT     AgentPause(DWORD dwFlags);
  17.         HRESULT     AgentResume(DWORD dwFlags);
  18.    
  19.     protected:
  20.         HRESULT     StartOperation();
  21.         HRESULT     StartDownload();
  22.         HRESULT     ModifyUpdateEnd(ISubscriptionItem *pEndItem, UINT *puiRes);
  23.     public:
  24.         void        SetEndStatus(HRESULT hr) { CDeliveryAgent::SetEndStatus(hr); }
  25.         void        SetErrorEndText(LPCWSTR szErrorText);
  26.         LPWSTR      GetErrorMessage(HRESULT hr);
  27.         HRESULT     StartNextDownload(LPWSTR szCodeBase, DWORD dwSize);
  28.         HRESULT     OnAgentEnd(const SUBSCRIPTIONCOOKIE *, long, HRESULT, LPCWSTR, BOOL);
  29.     private:
  30.         IXMLElement*     m_pSoftDistElement;
  31.         union {
  32.             LPWSTR           m_szCDF;
  33.             LPWSTR           m_szURL;
  34.         };
  35.         LPWSTR           m_szDistUnit;
  36.         SOFTDISTINFO     m_sdi;
  37.         LPWSTR           m_szErrorText;
  38.         DWORD            m_dwVersionMS;
  39.         DWORD            m_dwVersionLS;
  40.         CDLAgentBSC     *m_pCCDLAgentBSC;
  41.         ISoftDistExt    *m_pSoftDistExt;
  42.         
  43.         BOOL             m_bAcceptSoftware;
  44.         BOOL             m_bSendEmail;
  45.         BOOL             m_bSilentMode;
  46.         DWORD            m_dwChannelFlags;
  47.         DWORD            m_dwAgentFlags;
  48.         DWORD            m_dwMaxSizeKB;
  49.         DWORD            m_dwCurSize;
  50.         
  51.         CRunDeliveryAgent *m_pAgent;
  52. };
  53.          
  54. #endif