2 * MAPI utility header file
4 * Copyright 2009 Owen Rudge for CodeWeavers
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
24 extern void load_mapi_providers(void) DECLSPEC_HIDDEN
;
25 extern void unload_mapi_providers(void) DECLSPEC_HIDDEN
;
27 typedef struct MAPI_FUNCTIONS
{
28 LPMAPIADDRESS MAPIAddress
;
29 LPMAPIDELETEMAIL MAPIDeleteMail
;
30 LPMAPIDETAILS MAPIDetails
;
31 LPMAPIFINDNEXT MAPIFindNext
;
32 LPMAPIINITIALIZE MAPIInitialize
;
33 LPMAPILOGOFF MAPILogoff
;
34 LPMAPILOGON MAPILogon
;
35 LPMAPILOGONEX MAPILogonEx
;
36 LPMAPIREADMAIL MAPIReadMail
;
37 LPMAPIRESOLVENAME MAPIResolveName
;
38 LPMAPISAVEMAIL MAPISaveMail
;
39 LPMAPISENDMAIL MAPISendMail
;
40 LPMAPISENDMAILW MAPISendMailW
;
41 LPMAPISENDDOCUMENTS MAPISendDocuments
;
42 LPMAPIUNINITIALIZE MAPIUninitialize
;
44 VOID (WINAPI
*DeinitMapiUtil
) (void);
45 HRESULT (WINAPI
*DllCanUnloadNow
) (void);
46 HRESULT (WINAPI
*DllGetClassObject
) (REFCLSID
, REFIID
, LPVOID
*);
47 BOOL (WINAPI
*FGetComponentPath
) (LPCSTR
, LPCSTR
, LPSTR
, DWORD
, BOOL
);
48 HRESULT (WINAPI
*MAPIAdminProfiles
) (ULONG
, LPPROFADMIN
*);
49 SCODE (WINAPI
*MAPIAllocateBuffer
) (ULONG
, LPVOID
*);
50 SCODE (WINAPI
*MAPIAllocateMore
) (ULONG
, LPVOID
, LPVOID
*);
51 ULONG (WINAPI
*MAPIFreeBuffer
) (LPVOID
);
52 LPMALLOC (WINAPI
*MAPIGetDefaultMalloc
) (void);
53 HRESULT (WINAPI
*MAPIOpenLocalFormContainer
) (LPVOID
*);
54 HRESULT (WINAPI
*HrThisThreadAdviseSink
) (LPMAPIADVISESINK
, LPMAPIADVISESINK
*);
55 HRESULT (WINAPI
*HrQueryAllRows
) (LPMAPITABLE
, LPSPropTagArray
, LPSRestriction
, LPSSortOrderSet
, LONG
, LPSRowSet
*);
56 HRESULT (WINAPI
*OpenStreamOnFile
) (LPALLOCATEBUFFER
, LPFREEBUFFER
, ULONG
, LPWSTR
, LPWSTR
, LPSTREAM
*);
57 SCODE (WINAPI
*ScInitMapiUtil
) (ULONG ulReserved
);
58 HRESULT (WINAPI
*WrapCompressedRTFStream
) (LPSTREAM
, ULONG
, LPSTREAM
*);
61 extern MAPI_FUNCTIONS mapiFunctions DECLSPEC_HIDDEN
;
62 extern HINSTANCE hInstMAPI32 DECLSPEC_HIDDEN
;
64 #endif /* _MAPI_UTIL_H */