mapiaux.h (4478B) - Raw
1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 7 #ifndef MAPIAUXGUID_H 8 #ifdef INITGUID 9 #include <mapiguid.h> 10 #define MAPIAUXGUID_H 11 #endif /* INITGUID */ 12 13 #if !defined(INITGUID) || defined(USES_IID_IMsgServiceAdmin2) 14 DEFINE_OLEGUID(IID_IMsgServiceAdmin2,0x00020387, 0, 0); 15 #endif 16 17 #if !defined(INITGUID) || defined(USES_IID_IMessageRaw) 18 DEFINE_OLEGUID(IID_IMessageRaw,0x0002038a, 0, 0); 19 #endif 20 21 #endif /* MAPIAUXGUID_H */ 22 23 #ifndef MAPIAUX_H 24 #define MAPIAUX_H 25 26 #ifndef MAPIDEFS_H 27 #include <mapidefs.h> 28 #endif 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 #ifndef BEGIN_INTERFACE 35 #define BEGIN_INTERFACE 36 #endif 37 38 DECLARE_MAPI_INTERFACE_PTR(IMsgServiceAdmin2, LPSERVICEADMIN2); 39 40 #define PR_ATTACH_CONTENT_ID PROP_TAG(PT_TSTRING, 0x3712) 41 #define PR_ATTACH_CONTENT_ID_W PROP_TAG(PT_UNICODE, 0x3712) 42 #define PR_ATTACH_CONTENT_ID_A PROP_TAG(PT_STRING8, 0x3712) 43 44 #define PR_DISPLAY_TYPE_EX PROP_TAG(PT_LONG, 0x3905) 45 #define PR_MSG_EDITOR_FORMAT PROP_TAG(PT_LONG, 0x5909) 46 #define PR_ROH_FLAGS PROP_TAG(PT_LONG, 0x6623) 47 #define PR_ROH_PROXY_AUTH_SCHEME PROP_TAG(PT_LONG, 0x6627) 48 49 #define MAPI_BG_SESSION 0x00200000 50 #define MAPI_NO_COINIT 0x00000008 51 52 #define SPAMFILTER_ONSAVE ((ULONG)0x00000080) 53 #define ITEMPROC_FORCE ((ULONG)0x00000800) 54 #define NON_EMS_XP_SAVE ((ULONG)0x00001000) 55 56 #define MDB_ONLINE ((ULONG)0x00000100) 57 58 #define STORE_UNICODE_OK ((ULONG)0x00040000) 59 #define STORE_ITEMPROC ((ULONG)0x00200000) 60 61 #define MAPI_NO_CACHE ((ULONG)0x00000200) 62 #define MAPI_CACHE_ONLY ((ULONG)0x00004000) 63 64 #define AG_MONTHS 0 65 #define AG_WEEKS 1 66 #define AG_DAYS 2 67 #define NUM_AG_TYPES 3 68 69 #define DTE_FLAG_REMOTE_VALID 0x80000000 70 #define DTE_FLAG_ACL_CAPABLE 0x40000000 71 #define DTE_MASK_REMOTE 0x0000ff00 72 #define DTE_MASK_LOCAL 0x000000ff 73 74 #define DTE_IS_REMOTE_VALID(v) (!!((v) & DTE_FLAG_REMOTE_VALID)) 75 #define DTE_IS_ACL_CAPABLE(v) (!!((v) & DTE_FLAG_ACL_CAPABLE)) 76 #define DTE_REMOTE(v) (((v) & DTE_MASK_REMOTE) >> 8) 77 #define DTE_LOCAL(v) ((v) & DTE_MASK_LOCAL) 78 79 #define DT_ROOM ((ULONG)0x00000007) 80 #define DT_EQUIPMENT ((ULONG)0x00000008) 81 #define DT_SEC_DISTLIST ((ULONG)0x00000009) 82 83 #define EDITOR_FORMAT_DONTKNOW ((ULONG)0) 84 #define EDITOR_FORMAT_PLAINTEXT ((ULONG)1) 85 #define EDITOR_FORMAT_HTML ((ULONG)2) 86 #define EDITOR_FORMAT_RTF ((ULONG)3) 87 88 #define ROHFLAGS_USE_ROH 0x1 89 #define ROHFLAGS_SSL_ONLY 0x2 90 #define ROHFLAGS_MUTUAL_AUTH 0x4 91 #define ROHFLAGS_HTTP_FIRST_ON_FAST 0x8 92 #define ROHFLAGS_HTTP_FIRST_ON_SLOW 0x20 93 94 #define ROHAUTH_BASIC 0x1 95 #define ROHAUTH_NTLM 0x2 96 97 #define MAPI_IMSGSERVICEADMIN_METHODS(IPURE) \ 98 MAPIMETHOD(GetLastError) (THIS_ HRESULT hResult, ULONG ulFlags, LPMAPIERROR *lppMAPIError) IPURE; \ 99 MAPIMETHOD(GetMsgServiceTable) (THIS_ ULONG ulFlags, LPMAPITABLE *lppTable) IPURE; \ 100 MAPIMETHOD(CreateMsgService) (THIS_ LPTSTR lpszService, LPTSTR lpszDisplayName, ULONG_PTR ulUIParam, ULONG ulFlags) IPURE; \ 101 MAPIMETHOD(DeleteMsgService) (THIS_ LPMAPIUID lpUID) IPURE; \ 102 MAPIMETHOD(CopyMsgService) (THIS_ LPMAPIUID lpUID, LPTSTR lpszDisplayName, LPCIID lpInterfaceToCopy, LPCIID lpInterfaceDst, LPVOID lpObjectDst, ULONG_PTR ulUIParam, ULONG ulFlags) IPURE; \ 103 MAPIMETHOD(RenameMsgService) (THIS_ LPMAPIUID lpUID, ULONG ulFlags, LPTSTR lpszDisplayName) IPURE; \ 104 MAPIMETHOD(ConfigureMsgService) (THIS_ LPMAPIUID lpUID, ULONG_PTR ulUIParam, ULONG ulFlags, ULONG cValues, LPSPropValue lpProps) IPURE; \ 105 MAPIMETHOD(OpenProfileSection) (THIS_ LPMAPIUID lpUID, LPCIID lpInterface, ULONG ulFlags, LPPROFSECT *lppProfSect) IPURE; \ 106 MAPIMETHOD(MsgServiceTransportOrder) (THIS_ ULONG cUID, LPMAPIUID lpUIDList, ULONG ulFlags) IPURE; \ 107 MAPIMETHOD(AdminProviders) (THIS_ LPMAPIUID lpUID, ULONG ulFlags, LPPROVIDERADMIN *lppProviderAdmin) IPURE; \ 108 MAPIMETHOD(SetPrimaryIdentity) (THIS_ LPMAPIUID lpUID, ULONG ulFlags) IPURE; \ 109 MAPIMETHOD(GetProviderTable) (THIS_ ULONG ulFlags, LPMAPITABLE *lppTable) IPURE; \ 110 111 #define MAPI_IMSGSERVICEADMIN_METHODS2(IPURE) \ 112 MAPIMETHOD(CreateMsgServiceEx) (THIS_ LPTSTR lpszService, LPTSTR lpszDisplayName, ULONG_PTR ulUIParam, ULONG ulFlags, LPMAPIUID lpuidService) IPURE; \ 113 114 #undef INTERFACE 115 #define INTERFACE IMsgServiceAdmin2 116 DECLARE_MAPI_INTERFACE_(IMsgServiceAdmin2, IUnknown) 117 { 118 BEGIN_INTERFACE 119 MAPI_IUNKNOWN_METHODS(PURE) 120 MAPI_IMSGSERVICEADMIN_METHODS(PURE) 121 MAPI_IMSGSERVICEADMIN_METHODS2(PURE) 122 }; 123 124 #ifdef __cplusplus 125 } 126 #endif 127 128 #endif /* MAPIAUX_H */