1 /* mapi.h 2 3 Copyright 1997, 1998 Cygnus Solutions. 4 5 This file is part of Cygwin. 6 7 This software is a copyrighted work licensed under the terms of the 8 Cygwin license. Please consult the file "CYGWIN_LICENSE" for 9 details. */ 10 11 #ifndef _MAPI_H 12 #define _MAPI_H 13 14 /* Currently this doesn't include all the definitions. It does cover 15 the parts of Simple MAPI required to send mail. */ 16 17 #ifdef __cplusplus 18 extern "C" 19 { 20 #endif 21 22 /* FIXME: should this be elsewhere? */ 23 typedef unsigned long FLAGS; 24 25 /* FIXME: should this be elsewhere? */ 26 #define SUCCESS_SUCCESS 0 27 28 /* FIXME: should this be elsewhere? */ 29 typedef unsigned long LHANDLE, FAR *LPLHANDLE; 30 31 32 #define MAPI_E_AMBIGUOUS_RECIPIENT 0x15 33 #define MAPI_E_ATTACHMENT_NOT_FOUND 0xb 34 #define MAPI_E_ATTACHMENT_OPEN_FAILURE 0xc 35 #define MAPI_E_BAD_RECIPTYPE 0xf 36 #define MAPI_E_FAILURE 0x2 37 #define MAPI_E_INSUFFICIENT_MEMORY 0x5 38 #define MAPI_E_INVALID_RECIPS 0x19 39 #define MAPI_E_LOGIN_FAILURE 0x3 40 #define MAPI_E_TEXT_TOO_LARGE 0x12 41 #define MAPI_E_TOO_MANY_FILES 0x9 42 #define MAPI_E_TOO_MANY_RECIPIENTS 0xa 43 #define MAPI_E_UNKNOWN_RECIPIENT 0xe 44 #define MAPI_E_USER_ABORT 0x1 45 #define MAPI_E_TEXT_TOO_LARGE 0x12 46 #define MAPI_DIALOG 0x8 47 #define MAPI_NEW_SESSION 0x2 48 #define MAPI_LOGON_UI 0x1 49 #define MAPI_RECEIPT_REQUESTED 0x2 50 #define MAPI_SENT 0x4 51 #define MAPI_UNREAD 0x1 52 #define MAPI_OLE 0x1 53 #define MAPI_OLE_STATIC 0x2 54 55 #define MAPI_ORIG 0 56 #define MAPI_TO 1 57 #define MAPI_CC 2 58 #define MAPI_BCC 3 59 60 typedef struct 61 { 62 ULONG ulReserved; 63 ULONG flFlags; 64 ULONG nPosition; 65 LPTSTR lpszPathName; 66 LPTSTR lpszFileName; 67 LPVOID lpFileType; 68 } MapiFileDesc, FAR *lpMapiFileDesc; 69 70 typedef struct 71 { 72 ULONG ulReserved; 73 ULONG ulRecipClass; 74 LPTSTR lpszName; 75 LPTSTR lpszAddress; 76 ULONG ulEIDSize; 77 LPVOID lpEntryID; 78 } MapiRecipDesc, FAR *lpMapiRecipDesc; 79 80 typedef struct 81 { 82 ULONG ulReserved; 83 LPTSTR lpszSubject; 84 LPTSTR lpszNoteText; 85 LPTSTR lpszMessageType; 86 LPTSTR lpszDateReceived; 87 LPTSTR lpszConversationID; 88 FLAGS flFlags; 89 lpMapiRecipDesc lpOriginator; 90 ULONG nRecipCount; 91 lpMapiRecipDesc lpRecips; 92 ULONG nFileCount; 93 lpMapiFileDesc lpFiles; 94 } MapiMessage, FAR *lpMapiMessage; 95 96 ULONG FAR PASCAL MAPISendMail (LHANDLE, ULONG, lpMapiMessage, FLAGS, ULONG); 97 98 #ifdef __cplusplus 99 } 100 #endif 101 102 #endif /* _MAPI_H */ |