Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.3 KiB

  1. #ifndef _INC_EUDORA
  2. #define _INC_EUDORA
  3. typedef struct tagEUDORAACCTINFO
  4. {
  5. DWORD_PTR dwCookie;
  6. char szSection[MAX_PATH];
  7. char szDisplay[CCHMAX_ACCOUNT_NAME];
  8. } EUDORAACCTINFO;
  9. // {39981124-C287-11D0-8D8C-00C04FD6202B}
  10. DEFINE_GUID(CLSID_CEnumEUDORAACCTS, 0x39981124L, 0xC287, 0x11D0, 0x8D, 0x8C, 0x00, 0xC0, 0x4F, 0xD6, 0x20, 0x2B);
  11. class CEnumEUDORAACCTS : public IEnumIMPACCOUNTS
  12. {
  13. private:
  14. ULONG m_cRef;
  15. int m_iInfo;
  16. UINT m_cInfo;
  17. EUDORAACCTINFO *m_rgInfo;
  18. public:
  19. CEnumEUDORAACCTS(void);
  20. ~CEnumEUDORAACCTS(void);
  21. STDMETHODIMP QueryInterface(REFIID, LPVOID *);
  22. STDMETHODIMP_(ULONG) AddRef(void);
  23. STDMETHODIMP_(ULONG) Release(void);
  24. HRESULT STDMETHODCALLTYPE Next(IMPACCOUNTINFO *pinfo);
  25. HRESULT STDMETHODCALLTYPE Reset(void);
  26. HRESULT Init(EUDORAACCTINFO *pinfo, int cinfo);
  27. };
  28. // {39981125-C287-11D0-8D8C-00C04FD6202B}
  29. DEFINE_GUID(CLSID_CEudoraAcctImport, 0x39981125L, 0xC287, 0x11D0, 0x8D, 0x8C, 0x00, 0xC0, 0x4F, 0xD6, 0x20, 0x2B);
  30. class CEudoraAcctImport : public IAccountImport, public IAccountImport2
  31. {
  32. private:
  33. ULONG m_cRef;
  34. TCHAR m_szIni[MAX_PATH];
  35. UINT m_cInfo;
  36. EUDORAACCTINFO *m_rgInfo;
  37. HRESULT InitAccounts(char *szIni);
  38. HRESULT IGetSettings(DWORD_PTR dwCookie, IImnAccount *pAcct, IMPCONNINFO *pInfo);
  39. public:
  40. CEudoraAcctImport(void);
  41. ~CEudoraAcctImport(void);
  42. STDMETHODIMP QueryInterface(REFIID, LPVOID *);
  43. STDMETHODIMP_(ULONG) AddRef(void);
  44. STDMETHODIMP_(ULONG) Release(void);
  45. HRESULT STDMETHODCALLTYPE AutoDetect(DWORD *pcAcct, DWORD dwReserved);
  46. HRESULT STDMETHODCALLTYPE EnumerateAccounts(IEnumIMPACCOUNTS **ppEnum);
  47. HRESULT STDMETHODCALLTYPE GetSettings(DWORD_PTR dwCookie, IImnAccount *pAcct);
  48. HRESULT STDMETHODCALLTYPE InitializeImport(HWND hwnd, DWORD_PTR dwCookie);
  49. HRESULT STDMETHODCALLTYPE GetNewsGroup(INewsGroupImport *pImp, DWORD dwReserved);
  50. HRESULT STDMETHODCALLTYPE GetSettings2(DWORD_PTR dwCookie, IImnAccount *pAcct, IMPCONNINFO *pInfo);
  51. };
  52. #endif // _INC_EUDORA