Source code of Windows XP (NT5)
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.

60 lines
1.9 KiB

  1. #ifndef __EXMAPIPROF_HPP__
  2. #define __EXMAPIPROF_HPP__
  3. /*---------------------------------------------------------------------------
  4. File: ExMAPIProf.hpp
  5. Comments: class definitions for mapi address book
  6. (c) Copyright 1995-1998, Mission Critical Software, Inc., All Rights Reserved
  7. Proprietary and confidential to Mission Critical Software, Inc.
  8. REVISION LOG ENTRY
  9. Revision By: Christy Boles
  10. Revised on 08-Sep-98 13:49:48
  11. ---------------------------------------------------------------------------
  12. */
  13. #include <mapix.h>
  14. #include "Common.hpp"
  15. #include "UString.hpp"
  16. #include "EaLen.hpp"
  17. // This class encapsulates creating, configuring, using and deleting a MAPI profile
  18. class TMapiProfile
  19. {
  20. LPMAPISESSION m_session;
  21. BOOL m_bMapiInitialized;
  22. BOOL m_bLoggedOn;
  23. TCHAR m_profileName[300];
  24. public:
  25. TMapiProfile() { m_session=NULL; m_bMapiInitialized=FALSE; m_bLoggedOn=FALSE; m_profileName[0]=0;}
  26. ~TMapiProfile();
  27. DWORD SetProfile(TCHAR * profileName, BOOL create); // Creates profile and adds Exchange messaging service
  28. DWORD Logon(BOOL bMarkProfileForDeletion = FALSE);
  29. DWORD Logoff();
  30. LPMAPISESSION GetMapiSessionInterface() { return m_session; }
  31. protected:
  32. DWORD Initialize();
  33. DWORD Uninitialize();
  34. };
  35. BOOL LoadMAPI();
  36. void ReleaseMAPI();
  37. extern LPMAPIALLOCATEBUFFER pMAPIAllocateBuffer;
  38. extern LPMAPIFREEBUFFER pMAPIFreeBuffer;
  39. extern LPMAPIINITIALIZE pMAPIInitialize;
  40. extern LPMAPIUNINITIALIZE pMAPIUninitialize ;
  41. extern LPMAPILOGONEX pMAPILogonEx;
  42. extern LPMAPIADMINPROFILES pMAPIAdminProfiles;
  43. extern LPFREEPADRLIST pFreePadrlist;
  44. extern LPFREEPROWS pFreeProws;
  45. extern LPSCDUPPROPSET pScDupPropset;
  46. extern LPHRQUERYALLROWS pHrQueryAllRows;
  47. extern LPULRELEASE pUlRelease;
  48. #endif //__EXMAPIPROF_HPP__