ECABProvider.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * Copyright 2005 - 2016 Zarafa and its licensors
  3. *
  4. * This program is free software: you can redistribute it and/or modify
  5. * it under the terms of the GNU Affero General Public License, version 3,
  6. * as published by the Free Software Foundation.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU Affero General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU Affero General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. *
  16. */
  17. #ifndef ECABPROVIDER
  18. #define ECABPROVIDER
  19. #include <kopano/zcdefs.h>
  20. #include <kopano/ECUnknown.h>
  21. #include <kopano/Util.h>
  22. class ECABProvider _kc_final : public ECUnknown {
  23. protected:
  24. ECABProvider(ULONG ulFlags, const char *szClassName);
  25. virtual ~ECABProvider(void) _kc_impdtor;
  26. public:
  27. static HRESULT Create(ECABProvider **lppECABProvider);
  28. virtual HRESULT QueryInterface(REFIID refiid, void **lppInterface) _kc_override;
  29. virtual HRESULT Shutdown(ULONG * lpulFlags);
  30. virtual HRESULT Logon(LPMAPISUP lpMAPISup, ULONG ulUIParam, LPTSTR lpszProfileName, ULONG ulFlags, ULONG * lpulcbSecurity, LPBYTE * lppbSecurity, LPMAPIERROR * lppMAPIError, LPABLOGON * lppABLogon);
  31. class xABProvider _kc_final : public IABProvider {
  32. #include <kopano/xclsfrag/IUnknown.hpp>
  33. #include <kopano/xclsfrag/IABProvider.hpp>
  34. } m_xABProvider;
  35. ULONG m_ulFlags;
  36. ALLOC_WRAP_FRIEND;
  37. };
  38. #endif // #ifndef ECABPROVIDER