From ae334f668de2122f1a8f489834cbedec0a9da703 Mon Sep 17 00:00:00 2001 From: Danny Smith Date: Wed, 30 Jan 2002 17:33:27 +0000 Subject: [PATCH] * include/mapi.h: New file. * lib/mapi.def: Add missing function stubs. * lib/test.c: Include mapi.h. --- winsup/w32api/ChangeLog | 11 +++ winsup/w32api/include/commctrl.h | 7 ++ winsup/w32api/include/mapi.h | 160 +++++++++++++++++++++++++++++++ winsup/w32api/lib/mapi32.def | 12 +++ winsup/w32api/lib/test.c | 1 + 5 files changed, 191 insertions(+) create mode 100644 winsup/w32api/include/mapi.h diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog index 42e3c0c58..f90964bcb 100644 --- a/winsup/w32api/ChangeLog +++ b/winsup/w32api/ChangeLog @@ -1,3 +1,14 @@ +2002-01-30 Danny Smith + + * lib/test.c: Include mapi.h. + * include/commctrl.h (TBSTYLE_*): Add missing defines. + Thanks to: "Ron" + +2002-01-30 John Fattaruso + + * include/mapi.h: New file. + * lib/mapi.def: Add missing function stubs. + 2002-01-28 Danny Smith * include/winuser.h (GetWindowLongPtr[AW], diff --git a/winsup/w32api/include/commctrl.h b/winsup/w32api/include/commctrl.h index bd023bf5f..9e3658d52 100644 --- a/winsup/w32api/include/commctrl.h +++ b/winsup/w32api/include/commctrl.h @@ -238,6 +238,13 @@ extern "C" { #define TBSTYLE_CHECK 2 #define TBSTYLE_GROUP 4 #define TBSTYLE_CHECKGROUP (TBSTYLE_GROUP|TBSTYLE_CHECK) +#if (_WIN32_IE >= 0x0300) +#define TBSTYLE_DROPDOWN 8 +#endif +#if (_WIN32_IE >= 0x0400) +#define TBSTYLE_AUTOSIZE 16 +#define TBSTYLE_NOPREFIX 32 +#endif #define TBSTYLE_TOOLTIPS 256 #define TBSTYLE_WRAPABLE 512 #define TBSTYLE_ALTDRAG 1024 diff --git a/winsup/w32api/include/mapi.h b/winsup/w32api/include/mapi.h new file mode 100644 index 000000000..42755028a --- /dev/null +++ b/winsup/w32api/include/mapi.h @@ -0,0 +1,160 @@ +#ifndef _MAPI_H_ +#define _MAPI_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define SUCCESS_SUCCESS 0 +#define MAPI_USER_ABORT 1 +#define MAPI_E_USER_ABORT 1 +#define MAPI_E_FAILURE 2 +#define MAPI_E_LOGIN_FAILURE 3 +#define MAPI_E_LOGON_FAILURE 3 +#define MAPI_E_DISK_FULL 4 +#define MAPI_E_INSUFFICIENT_MEMORY 5 +#define MAPI_E_ACCESS_DENIED 6 +#define MAPI_E_BLK_TOO_SMALL 6 +#define MAPI_E_TOO_MANY_SESSIONS 8 +#define MAPI_E_TOO_MANY_FILES 9 +#define MAPI_E_TOO_MANY_RECIPIENTS 10 +#define MAPI_E_ATTACHMENT_NOT_FOUND 11 +#define MAPI_E_ATTACHMENT_OPEN_FAILURE 12 +#define MAPI_E_ATTACHMENT_WRITE_FAILURE 13 +#define MAPI_E_UNKNOWN_RECIPIENT 14 +#define MAPI_E_BAD_RECIPTYPE 15 +#define MAPI_E_NO_MESSAGES 16 +#define MAPI_E_INVALID_MESSAGE 17 +#define MAPI_E_TEXT_TOO_LARGE 18 +#define MAPI_E_INVALID_SESSION 19 +#define MAPI_E_TYPE_NOT_SUPPORTED 20 +#define MAPI_E_AMBIGUOUS_RECIPIENT 21 +#define MAPI_E_AMBIGUOUS_RECIP 21 +#define MAPI_E_MESSAGE_IN_USE 22 +#define MAPI_E_NETWORK_FAILURE 23 +#define MAPI_E_INVALID_EDITFIELDS 24 +#define MAPI_E_INVALID_RECIPS 25 +#define MAPI_E_NOT_SUPPORTED 26 + +#define MAPI_ORIG 0 +#define MAPI_TO 1 +#define MAPI_CC 2 +#define MAPI_BCC 3 + +#define MAPI_LOGON_UI 0x0001 +#define MAPI_NEW_SESSION 0x0002 +#define MAPI_FORCE_DOWNLOAD 0x1000 +#define MAPI_LOGOFF_SHARED 0x0001 +#define MAPI_LOGOFF_UI 0x0002 +#define MAPI_DIALOG 0x0008 +#define MAPI_UNREAD_ONLY 0x0020 +#define MAPI_LONG_MSGID 0x4000 +#define MAPI_GUARANTEE_FIFO 0x0100 +#define MAPI_ENVELOPE_ONLY 0x0040 +#define MAPI_PEEK 0x0080 +#define MAPI_BODY_AS_FILE 0x0200 +#define MAPI_SUPPRESS_ATTACH 0x0800 +#define MAPI_AB_NOMODIFY 0x0400 +#define MAPI_OLE 0x0001 +#define MAPI_OLE_STATIC 0x0002 +#define MAPI_UNREAD 0x0001 +#define MAPI_RECEIPT_REQUESTED 0x0002 +#define MAPI_SENT 0x0004 + +#ifndef RC_INVOKED +typedef unsigned long FLAGS; +typedef unsigned long LHANDLE; +typedef unsigned long FAR *LPLHANDLE, FAR *LPULONG; + +typedef struct { + ULONG ulReserved; + ULONG ulRecipClass; + LPTSTR lpszName; + LPTSTR lpszAddress; + ULONG ulEIDSize; + LPVOID lpEntryID; +} MapiRecipDesc, *lpMapiRecipDesc; +typedef struct { + ULONG ulReserved; + ULONG flFlags; + ULONG nPosition; + LPTSTR lpszPathName; + LPTSTR lpszFileName; + LPVOID lpFileType; +} MapiFileDesc, *lpMapiFileDesc; +typedef struct { + ULONG ulReserved; + ULONG cbTag; + LPBYTE lpTag; + ULONG cbEncoding; + LPBYTE lpEncoding; +} MapiFileTagExt, *lpMapiFileTagExt; +typedef struct { + ULONG ulReserved; + LPTSTR lpszSubject; + LPTSTR lpszNoteText; + LPTSTR lpszMessageType; + LPTSTR lpszDateReceived; + LPTSTR lpszConversationID; + FLAGS flFlags; + lpMapiRecipDesc lpOriginator; + ULONG nRecipCount; + lpMapiRecipDesc lpRecips; + ULONG nFileCount; + lpMapiFileDesc lpFiles; +} MapiMessage, *lpMapiMessage; + +ULONG PASCAL MAPILogon (ULONG,LPTSTR,LPTSTR,FLAGS,ULONG,LPLHANDLE); +ULONG PASCAL MAPISendMail (LHANDLE,ULONG,lpMapiMessage,FLAGS,ULONG); +ULONG PASCAL MAPISendDocuments (ULONG,LPTSTR,LPTSTR,LPTSTR,ULONG); +ULONG PASCAL MAPIReadMail (LHANDLE,ULONG,LPTSTR,FLAGS,ULONG, + lpMapiMessage*); +ULONG PASCAL MAPIFindNext (LHANDLE,ULONG,LPTSTR,LPTSTR,FLAGS,ULONG,LPTSTR); +ULONG PASCAL MAPIResolveName (LHANDLE,ULONG,LPTSTR,FLAGS,ULONG, + lpMapiRecipDesc*); +ULONG PASCAL MAPIAddress (LHANDLE,ULONG,LPTSTR,ULONG,LPTSTR,ULONG, + lpMapiRecipDesc,FLAGS,ULONG,LPULONG, + lpMapiRecipDesc*); +ULONG PASCAL MAPIFreeBuffer (LPVOID); +ULONG PASCAL MAPIDetails (LHANDLE,ULONG,lpMapiRecipDesc,FLAGS,ULONG); +ULONG PASCAL MAPISaveMail (LHANDLE,ULONG,lpMapiMessage lpszMessage, + FLAGS,ULONG,LPTSTR); +ULONG PASCAL MAPIDeleteMail (LHANDLE lpSession,ULONG,LPTSTR,FLAGS,ULONG); +ULONG PASCAL MAPILogoff (LHANDLE,ULONG,FLAGS,ULONG); +/* Netscape extensions. */ +ULONG PASCAL MAPIGetNetscapeVersion (void); +ULONG PASCAL MAPI_NSCP_SynchronizeClient (LHANDLE,ULONG); + +/* Handles for use with GetProcAddress */ +typedef ULONG (PASCAL * LPMAPILOGON) (ULONG,LPTSTR,LPTSTR,FLAGS,ULONG, + LPLHANDLE); +typedef ULONG (PASCAL * LPMAPISENDMAIL) (LHANDLE,ULONG,lpMapiMessage, + FLAGS,ULONG); +typedef ULONG (PASCAL * LPMAPISENDDOCUMENTS) (ULONG,LPTSTR,LPTSTR, + LPTSTR,ULONG); +typedef ULONG (PASCAL * LPMAPIREADMAIL) (LHANDLE,ULONG,LPTSTR,FLAGS, + ULONG,lpMapiMessage*); +typedef ULONG (PASCAL * LPMAPIFINDNEXT) (LHANDLE,ULONG,LPTSTR,LPTSTR, + FLAGS,ULONG,LPTSTR); +typedef ULONG (PASCAL * LPMAPIRESOLVENAME) (LHANDLE,ULONG,LPTSTR,FLAGS, + ULONG,lpMapiRecipDesc*); +typedef ULONG (PASCAL * LPMAPIADDRESS) (LHANDLE,ULONG,LPTSTR,ULONG,LPTSTR, + ULONG,lpMapiRecipDesc,FLAGS,ULONG, + LPULONG,lpMapiRecipDesc*); +typedef ULONG (PASCAL * LPMAPIFREEBUFFER) (LPVOID lpv); +typedef ULONG (PASCAL * LPMAPIDETAILS) (LHANDLE,ULONG,lpMapiRecipDesc, + FLAGS,ULONG); +typedef ULONG (PASCAL * LPMAPISAVEMAIL) (LHANDLE,ULONG,lpMapiMessage, + FLAGS,ULONG,LPTSTR); +typedef ULONG (PASCAL * LPMAPIDELETEMAIL) (LHANDLE lpSession,ULONG, + LPTSTR, FLAGS,ULONG); +typedef ULONG (PASCAL * LPMAPILOGOFF)(LHANDLE,ULONG,FLAGS,ULONG); + +#endif /* RC_INVOKED */ + +#ifdef __cplusplus +} +#endif + +#endif /* Not _MAPI_H_ */ + diff --git a/winsup/w32api/lib/mapi32.def b/winsup/w32api/lib/mapi32.def index fbd830175..2e4fe42fb 100644 --- a/winsup/w32api/lib/mapi32.def +++ b/winsup/w32api/lib/mapi32.def @@ -65,6 +65,8 @@ LAUNCHWIZARD LPropCompareProp@8 LaunchWizard@20 LpValFindProp@12 +MAPI_NSCP_SynchronizeClient@8 +MAPIAddress@44 MAPIAdminProfiles MAPIAdminProfiles@8 MAPIAllocateBuffer @@ -72,18 +74,28 @@ MAPIAllocateBuffer@8 MAPIAllocateMore MAPIAllocateMore@12 MAPIDeinitIdle@0 +MAPIDeleteMail@20 +MAPIDetails@20 +MAPIFindNext@28 MAPIFreeBuffer MAPIFreeBuffer@4 MAPIGetDefaultMalloc@0 +MAPIGetNetscapeVersion@0 MAPIInitIdle@4 MAPIInitialize MAPIInitialize@4 +MAPILogoff@16 +MAPILogon@24 MAPILogonEx MAPILogonEx@20 MAPIOpenFormMgr MAPIOpenFormMgr@8 MAPIOpenLocalFormContainer MAPIOpenLocalFormContainer@4 +MAPIReadMail@24 +MAPIResolveName@24 +MAPISaveMail@24 +MAPISendDocuments@20 MAPISendMail MAPISendMail@20 MAPIUninitialize diff --git a/winsup/w32api/lib/test.c b/winsup/w32api/lib/test.c index 1a30b8d53..9a6d79935 100644 --- a/winsup/w32api/lib/test.c +++ b/winsup/w32api/lib/test.c @@ -25,6 +25,7 @@ #include #include #include +#include #include #include