Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenmapi.h
Go to the documentation of this file.
00001 /* 00002 * Copyright (C) 2000 Francois Gouget 00003 * 00004 * This library is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU Lesser General Public 00006 * License as published by the Free Software Foundation; either 00007 * version 2.1 of the License, or (at your option) any later version. 00008 * 00009 * This library is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 * Lesser General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU Lesser General Public 00015 * License along with this library; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 00017 */ 00018 00019 #ifndef MAPI_H 00020 #define MAPI_H 00021 00022 #ifdef __cplusplus 00023 extern "C" { 00024 #endif 00025 00026 /* Some types */ 00027 00028 #ifndef __LHANDLE 00029 #define __LHANDLE 00030 typedef ULONG_PTR LHANDLE, *LPLHANDLE; 00031 #endif 00032 #define lhSessionNull ((LHANDLE)0) 00033 00034 #ifndef WINE_FLAGS_DEFINED 00035 #define WINE_FLAGS_DEFINED 00036 typedef ULONG FLAGS; 00037 #endif 00038 typedef ULONG *LPULONG; 00039 00040 typedef struct 00041 { 00042 ULONG ulReserved; 00043 ULONG flFlags; 00044 ULONG nPosition; 00045 LPSTR lpszPathName; 00046 LPSTR lpszFileName; 00047 LPVOID lpFileType; 00048 } MapiFileDesc, *lpMapiFileDesc; 00049 00050 #ifndef MAPI_ORIG 00051 #define MAPI_ORIG 0 00052 #define MAPI_TO 1 00053 #define MAPI_CC 2 00054 #define MAPI_BCC 3 00055 #endif 00056 00057 typedef struct 00058 { 00059 ULONG ulReserved; 00060 ULONG ulRecipClass; 00061 LPSTR lpszName; 00062 LPSTR lpszAddress; 00063 ULONG ulEIDSize; 00064 LPVOID lpEntryID; 00065 } MapiRecipDesc, *lpMapiRecipDesc; 00066 00067 typedef struct 00068 { 00069 ULONG ulReserved; 00070 LPSTR lpszSubject; 00071 LPSTR lpszNoteText; 00072 LPSTR lpszMessageType; 00073 LPSTR lpszDateReceived; 00074 LPSTR lpszConversationID; 00075 FLAGS flFlags; 00076 lpMapiRecipDesc lpOriginator; 00077 ULONG nRecipCount; 00078 lpMapiRecipDesc lpRecips; 00079 ULONG nFileCount; 00080 lpMapiFileDesc lpFiles; 00081 } MapiMessage, *lpMapiMessage; 00082 00083 00084 /* Error codes */ 00085 00086 #ifndef SUCCESS_SUCCESS 00087 #define SUCCESS_SUCCESS 0L 00088 #endif 00089 00090 #define MAPI_USER_ABORT 1 00091 #define MAPI_E_USER_ABORT MAPI_USER_ABORT 00092 #define MAPI_E_FAILURE 2 00093 #define MAPI_E_LOGON_FAILURE 3 00094 #define MAPI_E_LOGIN_FAILURE MAPI_E_LOGON_FAILURE 00095 #define MAPI_E_DISK_FULL 4 00096 #define MAPI_E_INSUFFICIENT_MEMORY 5 00097 #define MAPI_E_ACCESS_DENIED 6 00098 #define MAPI_E_TOO_MANY_SESSIONS 8 00099 #define MAPI_E_TOO_MANY_FILES 9 00100 #define MAPI_E_TOO_MANY_RECIPIENTS 10 00101 #define MAPI_E_ATTACHMENT_NOT_FOUND 11 00102 #define MAPI_E_ATTACHMENT_OPEN_FAILURE 12 00103 #define MAPI_E_ATTACHMENT_WRITE_FAILURE 13 00104 #define MAPI_E_UNKNOWN_RECIPIENT 14 00105 #define MAPI_E_BAD_RECIPTYPE 15 00106 #define MAPI_E_NO_MESSAGES 16 00107 #define MAPI_E_INVALID_MESSAGE 17 00108 #define MAPI_E_TEXT_TOO_LARGE 18 00109 #define MAPI_E_INVALID_SESSION 19 00110 #define MAPI_E_TYPE_NOT_SUPPORTED 20 00111 #define MAPI_E_AMBIGUOUS_RECIPIENT 21 00112 #define MAPI_E_AMBIG_RECIP MAPI_E_AMBIGUOUS_RECIPIENT 00113 #define MAPI_E_MESSAGE_IN_USE 22 00114 #define MAPI_E_NETWORK_FAILURE 23 00115 #define MAPI_E_INVALID_EDITFIELDS 24 00116 #define MAPI_E_INVALID_RECIPS 25 00117 #define MAPI_E_NOT_SUPPORTED 26 00118 00119 00120 /* MAPILogon */ 00121 00122 #ifndef MAPI_LOGON_UI 00123 #define MAPI_LOGON_UI 0x00000001 00124 #endif 00125 #ifndef MAPI_NEW_SESSION 00126 #define MAPI_NEW_SESSION 0x00000002 00127 #endif 00128 #ifndef MAPI_EXTENDED 00129 #define MAPI_EXTENDED 0x00000020 00130 #endif 00131 #ifndef MAPI_FORCE_DOWNLOAD 00132 #define MAPI_FORCE_DOWNLOAD 0x00001000 00133 #endif 00134 #ifndef MAPI_PASSWORD_UI 00135 #define MAPI_PASSWORD_UI 0x00020000 00136 #endif 00137 00138 00139 /* MAPISendMail */ 00140 00141 #define MAPI_DIALOG 0x00000008 00142 00143 00144 /* API typedefs and prototypes */ 00145 00146 typedef ULONG (WINAPI MAPIADDRESS)(LHANDLE,ULONG_PTR,LPSTR,ULONG,LPSTR,ULONG,lpMapiRecipDesc,FLAGS,ULONG,LPULONG,lpMapiRecipDesc*); 00147 typedef MAPIADDRESS *LPMAPIADDRESS; 00148 MAPIADDRESS MAPIAddress; 00149 00150 typedef ULONG (WINAPI MAPIDELETEMAIL)(LHANDLE,ULONG_PTR,LPSTR,FLAGS,ULONG); 00151 typedef MAPIDELETEMAIL *LPMAPIDELETEMAIL; 00152 MAPIDELETEMAIL MAPIDeleteMail; 00153 00154 typedef ULONG (WINAPI MAPIDETAILS)(LHANDLE,ULONG_PTR,lpMapiRecipDesc,FLAGS,ULONG); 00155 typedef MAPIDETAILS *LPMAPIDETAILS; 00156 MAPIDETAILS MAPIDetails; 00157 00158 typedef ULONG (WINAPI MAPIFINDNEXT)(LHANDLE,ULONG_PTR,LPSTR,LPSTR,FLAGS,ULONG,LPSTR); 00159 typedef MAPIFINDNEXT *LPMAPIFINDNEXT; 00160 MAPIFINDNEXT MAPIFindNext; 00161 00162 #ifndef MAPIFREEBUFFER_DEFINED 00163 #define MAPIFREEBUFFER_DEFINED 00164 typedef ULONG (WINAPI MAPIFREEBUFFER)(LPVOID); 00165 typedef MAPIFREEBUFFER *LPMAPIFREEBUFFER; 00166 MAPIFREEBUFFER MAPIFreeBuffer; 00167 #endif 00168 00169 typedef ULONG (WINAPI MAPILOGOFF)(LHANDLE,ULONG_PTR,FLAGS,ULONG); 00170 typedef MAPILOGOFF *LPMAPILOGOFF; 00171 MAPILOGOFF MAPILogoff; 00172 00173 typedef ULONG (WINAPI MAPILOGON)(ULONG_PTR,LPSTR,LPSTR,FLAGS,ULONG,LPLHANDLE); 00174 typedef MAPILOGON *LPMAPILOGON; 00175 MAPILOGON MAPILogon; 00176 00177 typedef ULONG (WINAPI MAPIREADMAIL)(LHANDLE,ULONG_PTR,LPSTR,FLAGS,ULONG,lpMapiMessage); 00178 typedef MAPIREADMAIL *LPMAPIREADMAIL; 00179 MAPIREADMAIL MAPIReadMail; 00180 00181 typedef ULONG (WINAPI MAPIRESOLVENAME)(LHANDLE,ULONG_PTR,LPSTR,FLAGS,ULONG,lpMapiRecipDesc*); 00182 typedef MAPIRESOLVENAME *LPMAPIRESOLVENAME; 00183 MAPIRESOLVENAME MAPIResolveName; 00184 00185 typedef ULONG (WINAPI MAPISAVEMAIL)(LHANDLE,ULONG_PTR,lpMapiMessage,FLAGS,ULONG,LPSTR); 00186 typedef MAPISAVEMAIL *LPMAPISAVEMAIL; 00187 MAPISAVEMAIL MAPISaveMail; 00188 00189 typedef ULONG (WINAPI MAPISENDDOCUMENTS)(ULONG_PTR,LPSTR,LPSTR,LPSTR,ULONG); 00190 typedef MAPISENDDOCUMENTS *LPMAPISENDDOCUMENTS; 00191 MAPISENDDOCUMENTS MAPISendDocuments; 00192 00193 typedef ULONG (WINAPI MAPISENDMAIL)(LHANDLE,ULONG_PTR,lpMapiMessage,FLAGS,ULONG); 00194 typedef MAPISENDMAIL *LPMAPISENDMAIL; 00195 MAPISENDMAIL MAPISendMail; 00196 00197 #ifdef __cplusplus 00198 } 00199 #endif 00200 00201 #endif /* MAPI_H */ Generated on Sat May 26 2012 04:30:24 for ReactOS by
1.7.6.1
|