You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1044 lines
29 KiB
1044 lines
29 KiB
/*
|
|
* STRUCTS.H
|
|
*
|
|
* Structures defining method parameters for validation sub-system
|
|
*/
|
|
|
|
#ifndef STRUCTS_H
|
|
#define STRUCTS_H
|
|
|
|
#if defined(_AMD64_) || defined(_IA64_)
|
|
#define LARGE_INTEGER_ARG LARGE_INTEGER
|
|
#define LARGE_INTEGER_ARG_2 LARGE_INTEGER
|
|
#define ULARGE_INTEGER_ARG ULARGE_INTEGER
|
|
#define ULARGE_INTEGER_ARG_2 ULARGE_INTEGER
|
|
#else
|
|
#define LARGE_INTEGER_ARG LPVOID XXXX; LPVOID
|
|
#define LARGE_INTEGER_ARG_2 LPVOID YYYY; LPVOID
|
|
#define ULARGE_INTEGER_ARG LPVOID XXXX; LPVOID
|
|
#define ULARGE_INTEGER_ARG_2 LPVOID YYYY; LPVOID
|
|
#endif
|
|
|
|
/*
|
|
* These structures represent the parameters for the appropriate functions as they
|
|
* appear on the stack.
|
|
*
|
|
* The WIN16 stack is laid out differently, and has the parameters in the reverse order.
|
|
*
|
|
* Our __ValidateParameters function decides passes a pointer to the stack at the start of
|
|
* the parameter list, and the type of the Validation routines parameter determines
|
|
* what values it has to check. These values do not change between platforms.
|
|
*
|
|
* If parameters to a method change, the structure must be updated to reflect the change.
|
|
*
|
|
* The names of the Typedefs are important as other things are generated based on these
|
|
* names.
|
|
*
|
|
*/
|
|
|
|
/* Keystroke Macros to convert method in MAPIDEFS.H to structure here
|
|
*
|
|
* 1. Convert MAPIMETHOD(XXX) to typedef struct _tagXXX_Params (search for ')')
|
|
* 2. For each line, find comma, replace with ; and delete to end of line
|
|
* 3. Start on typedef line, read XXX, search for IPURE, replace preceding )
|
|
* with ;, add new line, generate } XXX_params, FAR * LPXXXParams;
|
|
* 4. Change (THIS_ to LPVOID This;, split line
|
|
*
|
|
*/
|
|
|
|
|
|
/****************** IUnknown *********************/
|
|
typedef struct _tagIUnknown_QueryInterface_Params
|
|
{
|
|
LPVOID This;
|
|
REFIID iidInterface;
|
|
LPVOID lppNewObject;
|
|
} IUnknown_QueryInterface_Params, FAR * LPIUnknown_QueryInterface_Params;
|
|
|
|
typedef struct _tagIUnknown_AddRef_Params
|
|
{
|
|
LPVOID This;
|
|
} IUnknown_AddRef_Params, FAR * LPIUnknown_AddRef_Params;
|
|
|
|
typedef struct _tagIUnknown_Release_Params
|
|
{
|
|
LPVOID This;
|
|
} IUnknown_Release_Params, FAR * LPIUnknown_Release_Params;
|
|
|
|
|
|
/* AddRef and Release take no parameters */
|
|
|
|
/***************** IMAPIProp *********************/
|
|
|
|
typedef struct _tagIMAPIProp_GetLastError_Params
|
|
{
|
|
LPVOID This;
|
|
HRESULT hResult;
|
|
ULONG ulFlags;
|
|
LPMAPIERROR FAR * lppMAPIError;
|
|
} IMAPIProp_GetLastError_Params, FAR * LPIMAPIProp_GetLastError_Params;
|
|
|
|
typedef struct _tagIMAPIProp_SaveChanges_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
} IMAPIProp_SaveChanges_Params, FAR * LPIMAPIProp_SaveChanges_Params;
|
|
|
|
|
|
/* GetProps --------------------------------------------------------- */
|
|
typedef struct _tagIMAPIProp_GetProps_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpPropTagArray;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpcValues;
|
|
LPSPropValue FAR * lppPropArray;
|
|
} IMAPIProp_GetProps_Params, FAR * LPIMAPIProp_GetProps_Params;
|
|
|
|
|
|
|
|
typedef struct _tagIMAPIProp_GetPropList_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPSPropTagArray FAR * lppPropTagArray;
|
|
} IMAPIProp_GetPropList_Params, FAR * LPIMAPIProp_GetPropList_Params;
|
|
|
|
typedef struct _tagIMAPIProp_OpenProperty_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulPropTag;
|
|
LPIID lpiid;
|
|
ULONG ulInterfaceOptions;
|
|
ULONG ulFlags;
|
|
LPUNKNOWN FAR * lppUnk;
|
|
} IMAPIProp_OpenProperty_Params, FAR * LPIMAPIProp_OpenProperty_Params;
|
|
|
|
/* SetProps --------------------------------------------------------- */
|
|
typedef struct _tagIMAPIProp_SetProps_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cValues;
|
|
LPSPropValue lpPropArray;
|
|
LPSPropProblemArray FAR * lppProblems;
|
|
} IMAPIProp_SetProps_Params, FAR * LPIMAPIProp_SetProps_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIProp_DeleteProps_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpPropTagArray;
|
|
LPSPropProblemArray FAR * lppProblems;
|
|
} IMAPIProp_DeleteProps_Params, FAR * LPIMAPIProp_DeleteProps_Params;
|
|
|
|
typedef struct _tagIMAPIProp_CopyTo_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ciidExclude;
|
|
LPIID rgiidExclude;
|
|
LPSPropTagArray lpExcludeProps;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
LPIID lpInterface;
|
|
LPVOID lpDestObj;
|
|
ULONG ulFlags;
|
|
LPSPropProblemArray FAR * lppProblems;
|
|
} IMAPIProp_CopyTo_Params, FAR * LPIMAPIProp_CopyTo_Params;
|
|
|
|
typedef struct _tagIMAPIProp_CopyProps_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpIncludeProps;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
LPIID lpInterface;
|
|
LPVOID lpDestObj;
|
|
ULONG ulFlags;
|
|
LPSPropProblemArray FAR * lppProblems;
|
|
} IMAPIProp_CopyProps_Params, FAR * LPIMAPIProp_CopyProps_Params;
|
|
|
|
typedef struct _tagIMAPIProp_GetNamesFromIDs_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray FAR * lppPropTags;
|
|
LPGUID lpPropSetGuid;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpcPropNames;
|
|
LPMAPINAMEID FAR * FAR * lpppPropNames;
|
|
} IMAPIProp_GetNamesFromIDs_Params, FAR * LPIMAPIProp_GetNamesFromIDs_Params;
|
|
|
|
typedef struct _tagIMAPIProp_GetIDsFromNames_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cPropNames;
|
|
LPMAPINAMEID FAR * lppPropNames;
|
|
ULONG ulFlags;
|
|
LPSPropTagArray FAR * lppPropTags;
|
|
} IMAPIProp_GetIDsFromNames_Params, FAR * LPIMAPIProp_GetIDsFromNames_Params;
|
|
|
|
|
|
/********************* IMAPITable **************************************/
|
|
|
|
typedef struct _tagIMAPITable_GetLastError_Params
|
|
{
|
|
LPVOID This;
|
|
HRESULT hResult;
|
|
ULONG ulFlags;
|
|
LPMAPIERROR FAR * lppMAPIError;
|
|
} IMAPITable_GetLastError_Params, FAR * LPIMAPITable_GetLastError_Params;
|
|
|
|
typedef struct _tagIMAPITable_Advise_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulEventMask;
|
|
LPMAPIADVISESINK lpAdviseSink;
|
|
ULONG FAR * lpulConnection;
|
|
} IMAPITable_Advise_Params, FAR * LPIMAPITable_Advise_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_Unadvise_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulConnection;
|
|
} IMAPITable_Unadvise_Params, FAR * LPIMAPITable_Unadvise_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_GetStatus_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG FAR * lpulTableStatus;
|
|
ULONG FAR * lpulTableType;
|
|
} IMAPITable_GetStatus_Params, FAR * LPIMAPITable_GetStatus_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_SetColumns_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpPropTagArray;
|
|
ULONG ulFlags;
|
|
} IMAPITable_SetColumns_Params, FAR * LPIMAPITable_SetColumns_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_QueryColumns_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPSPropTagArray FAR * lpPropTagArray;
|
|
} IMAPITable_QueryColumns_Params, FAR * LPIMAPITable_QueryColumns_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_GetRowCount_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulCount;
|
|
} IMAPITable_GetRowCount_Params, FAR * LPIMAPITable_GetRowCount_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_SeekRow_Params
|
|
{
|
|
LPVOID This;
|
|
BOOKMARK bkOrigin;
|
|
LONG lRowCount;
|
|
LONG FAR * lplRowsSought;
|
|
} IMAPITable_SeekRow_Params, FAR * LPIMAPITable_SeekRow_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_SeekRowApprox_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulNumerator;
|
|
ULONG ulDenominator;
|
|
} IMAPITable_SeekRowApprox_Params, FAR * LPIMAPITable_SeekRowApprox_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_QueryPosition_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG FAR * lpulRow;
|
|
ULONG FAR * lpulNumerator;
|
|
ULONG FAR * lpulDenominator;
|
|
} IMAPITable_QueryPosition_Params, FAR * LPIMAPITable_QueryPosition_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_FindRow_Params
|
|
{
|
|
LPVOID This;
|
|
LPSRestriction lpRestriction;
|
|
BOOKMARK bkOrigin;
|
|
ULONG ulFlags;
|
|
} IMAPITable_FindRow_Params, FAR * LPIMAPITable_FindRow_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_Restrict_Params
|
|
{
|
|
LPVOID This;
|
|
LPSRestriction lpRestriction;
|
|
ULONG ulFlags;
|
|
} IMAPITable_Restrict_Params, FAR * LPIMAPITable_Restrict_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_CreateBookmark_Params
|
|
{
|
|
LPVOID This;
|
|
BOOKMARK FAR * lpbkPosition;
|
|
} IMAPITable_CreateBookmark_Params, FAR * LPIMAPITable_CreateBookmark_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_FreeBookmark_Params
|
|
{
|
|
LPVOID This;
|
|
BOOKMARK bkPosition;
|
|
} IMAPITable_FreeBookmark_Params, FAR * LPIMAPITable_FreeBookmark_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_SortTable_Params
|
|
{
|
|
LPVOID This;
|
|
LPSSortOrderSet lpSortCriteria;
|
|
ULONG ulFlags;
|
|
} IMAPITable_SortTable_Params, FAR * LPIMAPITable_SortTable_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_QuerySortOrder_Params
|
|
{
|
|
LPVOID This;
|
|
LPSSortOrderSet FAR * lppSortCriteria;
|
|
} IMAPITable_QuerySortOrder_Params, FAR * LPIMAPITable_QuerySortOrder_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_QueryRows_Params
|
|
{
|
|
LPVOID This;
|
|
LONG lRowCount;
|
|
ULONG ulFlags;
|
|
LPSRowSet FAR * lppRows;
|
|
} IMAPITable_QueryRows_Params, FAR * LPIMAPITable_QueryRows_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_Abort_Params
|
|
{
|
|
LPVOID This;
|
|
} IMAPITable_Abort_Params, FAR * LPIMAPITable_Abort_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_ExpandRow_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbInstanceKey;
|
|
LPBYTE pbInstanceKey;
|
|
ULONG ulRowCount;
|
|
ULONG ulFlags;
|
|
LPSRowSet FAR * lppRows;
|
|
ULONG FAR * lpulMoreRows;
|
|
} IMAPITable_ExpandRow_Params, FAR * LPIMAPITable_ExpandRow_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_CollapseRow_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbInstanceKey;
|
|
LPBYTE pbInstanceKey;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulRowCount;
|
|
} IMAPITable_CollapseRow_Params, FAR * LPIMAPITable_CollapseRow_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_WaitForCompletion_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
ULONG ulTimeout;
|
|
ULONG FAR * lpulTableStatus;
|
|
} IMAPITable_WaitForCompletion_Params, FAR * LPIMAPITable_WaitForCompletion_Params;
|
|
|
|
|
|
typedef struct _tagIMAPITable_GetCollapseState_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
ULONG cbInstanceKey;
|
|
LPBYTE lpbInstanceKey;
|
|
ULONG FAR * lpcbCollapseState;
|
|
LPBYTE FAR * lppbCollapseState;
|
|
} IMAPITable_GetCollapseState_Params, FAR * LPIMAPITable_GetCollapseState_Params;
|
|
|
|
typedef struct _tagIMAPITable_SetCollapseState_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
ULONG cbCollapseState;
|
|
LPBYTE pbCollapseState;
|
|
BOOKMARK FAR * lpbkLocation;
|
|
} IMAPITable_SetCollapseState_Params, FAR * LPIMAPITable_SetCollapseState_Params;
|
|
|
|
|
|
|
|
/********************* IMAPIStatus *************************************/
|
|
|
|
typedef struct _tagIMAPIStatus_ValidateState_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulUIParam;
|
|
ULONG ulFlags;
|
|
} IMAPIStatus_ValidateState_Params, FAR * LPIMAPIStatus_ValidateState_Params;
|
|
|
|
typedef struct _tagIMAPIStatus_SettingsDialog_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulUIParam;
|
|
ULONG ulFlags;
|
|
} IMAPIStatus_SettingsDialog_Params, FAR * LPIMAPIStatus_SettingsDialog_Params;
|
|
|
|
typedef struct _tagIMAPIStatus_ChangePassword_Params
|
|
{
|
|
LPVOID This;
|
|
LPTSTR lpOldPass;
|
|
LPTSTR lpNewPass;
|
|
ULONG ulFlags;
|
|
} IMAPIStatus_ChangePassword_Params, FAR * LPIMAPIStatus_ChangePassword_Params;
|
|
|
|
typedef struct _tagIMAPIStatus_FlushQueues_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulUIParam;
|
|
ULONG cbTargetTransport;
|
|
LPENTRYID lpTargetTransport;
|
|
ULONG ulFlags;
|
|
} IMAPIStatus_FlushQueues_Params, FAR * LPIMAPIStatus_FlushQueues_Params;
|
|
|
|
|
|
/******************** IMAPIContainer ***********************************/
|
|
|
|
|
|
typedef struct _tagIMAPIContainer_GetContentsTable_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMAPIContainer_GetContentsTable_Params, FAR * LPIMAPIContainer_GetContentsTable_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIContainer_GetHierarchyTable_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMAPIContainer_GetHierarchyTable_Params, FAR * LPIMAPIContainer_GetHierarchyTable_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIContainer_OpenEntry_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulObjType;
|
|
LPUNKNOWN FAR * lppUnk;
|
|
} IMAPIContainer_OpenEntry_Params, FAR * LPIMAPIContainer_OpenEntry_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIContainer_SetSearchCriteria_Params
|
|
{
|
|
LPVOID This;
|
|
LPSRestriction lpRestriction;
|
|
LPENTRYLIST lpContainerList;
|
|
ULONG ulSearchFlags;
|
|
} IMAPIContainer_SetSearchCriteria_Params, FAR * LPIMAPIContainer_SetSearchCriteria_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIContainer_GetSearchCriteria_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPSRestriction FAR * lppRestriction;
|
|
LPENTRYLIST FAR * lppContainerList;
|
|
ULONG FAR * lpulSearchState;
|
|
} IMAPIContainer_GetSearchCriteria_Params, FAR * LPIMAPIContainer_GetSearchCriteria_Params;
|
|
|
|
|
|
|
|
/****************************** IABContainer *****************************/
|
|
|
|
|
|
typedef struct _tagIABContainer_CreateEntry_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulFlags;
|
|
LPMAPIPROP FAR * lppMAPIPropEntry;
|
|
} IABContainer_CreateEntry_Params, FAR * LPIABContainer_CreateEntry_Params;
|
|
|
|
|
|
typedef struct _tagIABContainer_CopyEntries_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpEntries;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IABContainer_CopyEntries_Params, FAR * LPIABContainer_CopyEntries_Params;
|
|
|
|
|
|
typedef struct _tagIABContainer_DeleteEntries_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpEntries;
|
|
ULONG ulFlags;
|
|
} IABContainer_DeleteEntries_Params, FAR * LPIABContainer_DeleteEntries_Params;
|
|
|
|
typedef struct _tagIABContainer_ResolveNames_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpPropTagArray;
|
|
ULONG ulFlags;
|
|
LPADRLIST lpMods;
|
|
LPFlagList lpFlagList;
|
|
} IABContainer_ResolveNames_Params, FAR * LPIABContainer_ResolveNames_Params;
|
|
|
|
/*************************** IDistList ***********************************/
|
|
|
|
|
|
typedef struct _tagIDistList_CreateEntry_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulCreateFlags;
|
|
LPMAPIPROP FAR * lppMAPIPropEntry;
|
|
} IDistList_CreateEntry_Params, FAR * LPIDistList_CreateEntry_Params;
|
|
|
|
|
|
typedef struct _tagIDistList_CopyEntries_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpEntries;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IDistList_CopyEntries_Params, FAR * LPIDistList_CopyEntries_Params;
|
|
|
|
|
|
typedef struct _tagIDistList_DeleteEntries_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpEntries;
|
|
ULONG ulFlags;
|
|
} IDistList_DeleteEntries_Params, FAR * LPIDistList_DeleteEntries_Params;
|
|
|
|
typedef struct _tagIDistList_ResolveNames_Params
|
|
{
|
|
LPVOID This;
|
|
LPSPropTagArray lpPropTagArray;
|
|
ULONG ulFlags;
|
|
LPADRLIST lpMods;
|
|
LPFlagList lpFlagList;
|
|
} IDistList_ResolveNames_Params, FAR * LPIDistList_ResolveNames_Params;
|
|
|
|
/**************************** IMAPIFolder *******************************/
|
|
|
|
typedef struct _tagIMAPIFolder_CreateMessage_Params
|
|
{
|
|
LPVOID This;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
LPMESSAGE FAR * lppMessage;
|
|
} IMAPIFolder_CreateMessage_Params, FAR * LPIMAPIFolder_CreateMessage_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_CopyMessages_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpMsgList;
|
|
LPIID lpInterface;
|
|
LPVOID lpDestFolder;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_CopyMessages_Params, FAR * LPIMAPIFolder_CopyMessages_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_DeleteMessages_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpMsgList;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_DeleteMessages_Params, FAR * LPIMAPIFolder_DeleteMessages_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_CreateFolder_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFolderType;
|
|
LPTSTR lpszFolderName;
|
|
LPTSTR lpszFolderComment;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
LPMAPIFOLDER FAR * lppFolder;
|
|
} IMAPIFolder_CreateFolder_Params, FAR * LPIMAPIFolder_CreateFolder_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_CopyFolder_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
LPIID lpInterface;
|
|
LPVOID lpDestFolder;
|
|
LPTSTR lpszNewFolderName;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_CopyFolder_Params, FAR * LPIMAPIFolder_CopyFolder_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_DeleteFolder_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_DeleteFolder_Params, FAR * LPIMAPIFolder_DeleteFolder_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_SetReadFlags_Params
|
|
{
|
|
LPVOID This;
|
|
LPENTRYLIST lpMsgList;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_SetReadFlags_Params, FAR * LPIMAPIFolder_SetReadFlags_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_GetMessageStatus_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulMessageStatus;
|
|
} IMAPIFolder_GetMessageStatus_Params, FAR * LPIMAPIFolder_GetMessageStatus_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_SetMessageStatus_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulNewStatus;
|
|
ULONG ulNewStatusMask;
|
|
ULONG FAR * lpulOldStatus;
|
|
} IMAPIFolder_SetMessageStatus_Params, FAR * LPIMAPIFolder_SetMessageStatus_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_SaveContentsSort_Params
|
|
{
|
|
LPVOID This;
|
|
LPSSortOrderSet lpSortCriteria;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_SaveContentsSort_Params, FAR * LPIMAPIFolder_SaveContentsSort_Params;
|
|
|
|
|
|
typedef struct _tagIMAPIFolder_EmptyFolder_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMAPIFolder_EmptyFolder_Params, FAR * LPIMAPIFolder_EmptyFolder_Params;
|
|
|
|
|
|
|
|
/**************************** IMsgStore **********************************/
|
|
|
|
typedef struct _tagIMsgStore_Advise_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulEventMask;
|
|
LPMAPIADVISESINK lpAdviseSink;
|
|
ULONG FAR * lpulConnection;
|
|
} IMsgStore_Advise_Params, FAR * LPIMsgStore_Advise_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_Unadvise_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulConnection;
|
|
} IMsgStore_Unadvise_Params, FAR * LPIMsgStore_Unadvise_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_CompareEntryIDs_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID1;
|
|
LPENTRYID lpEntryID1;
|
|
ULONG cbEntryID2;
|
|
LPENTRYID lpEntryID2;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulResult;
|
|
} IMsgStore_CompareEntryIDs_Params, FAR * LPIMsgStore_CompareEntryIDs_Params;
|
|
|
|
typedef struct _tagIMsgStore_OpenEntry_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulObjType;
|
|
LPUNKNOWN FAR * lppUnk;
|
|
} IMsgStore_OpenEntry_Params, FAR * LPIMsgStore_OpenEntry_Params;
|
|
|
|
|
|
|
|
typedef struct _tagIMsgStore_SetReceiveFolder_Params
|
|
{
|
|
LPVOID This;
|
|
LPTSTR lpszMessageClass;
|
|
ULONG ulFlags;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
} IMsgStore_SetReceiveFolder_Params, FAR * LPIMsgStore_SetReceiveFolder_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_GetReceiveFolder_Params
|
|
{
|
|
LPVOID This;
|
|
LPTSTR lpszMessageClass;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpcbEntryID;
|
|
LPENTRYID FAR * lppEntryID;
|
|
LPTSTR FAR * lppszExplicitClass;
|
|
} IMsgStore_GetReceiveFolder_Params, FAR * LPIMsgStore_GetReceiveFolder_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_GetReceiveFolderTable_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMsgStore_GetReceiveFolderTable_Params, FAR * LPIMsgStore_GetReceiveFolderTable_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_StoreLogoff_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG FAR * lpulFlags;
|
|
} IMsgStore_StoreLogoff_Params, FAR * LPIMsgStore_StoreLogoff_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_AbortSubmit_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
ULONG ulFlags;
|
|
} IMsgStore_AbortSubmit_Params, FAR * LPIMsgStore_AbortSubmit_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_GetOutgoingQueue_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMsgStore_GetOutgoingQueue_Params, FAR * LPIMsgStore_GetOutgoingQueue_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_SetLockState_Params
|
|
{
|
|
LPVOID This;
|
|
LPMESSAGE lpMessage;
|
|
ULONG ulLockState;
|
|
} IMsgStore_SetLockState_Params, FAR * LPIMsgStore_SetLockState_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_FinishedMsg_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
ULONG cbEntryID;
|
|
LPENTRYID lpEntryID;
|
|
} IMsgStore_FinishedMsg_Params, FAR * LPIMsgStore_FinishedMsg_Params;
|
|
|
|
|
|
typedef struct _tagIMsgStore_NotifyNewMail_Params
|
|
{
|
|
LPVOID This;
|
|
LPNOTIFICATION lpNotification;
|
|
} IMsgStore_NotifyNewMail_Params, FAR * LPIMsgStore_NotifyNewMail_Params;
|
|
|
|
|
|
|
|
/*************************** IMessage ***********************************/
|
|
|
|
typedef struct _tagIMessage_GetAttachmentTable_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMessage_GetAttachmentTable_Params, FAR * LPIMessage_GetAttachmentTable_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_OpenAttach_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulAttachmentNum;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
LPATTACH FAR * lppAttach;
|
|
} IMessage_OpenAttach_Params, FAR * LPIMessage_OpenAttach_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_CreateAttach_Params
|
|
{
|
|
LPVOID This;
|
|
LPIID lpInterface;
|
|
ULONG ulFlags;
|
|
ULONG FAR * lpulAttachmentNum;
|
|
LPATTACH FAR * lppAttach;
|
|
} IMessage_CreateAttach_Params, FAR * LPIMessage_CreateAttach_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_DeleteAttach_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulAttachmentNum;
|
|
ULONG ulUIParam;
|
|
LPMAPIPROGRESS lpProgress;
|
|
ULONG ulFlags;
|
|
} IMessage_DeleteAttach_Params, FAR * LPIMessage_DeleteAttach_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_GetRecipientTable_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPMAPITABLE FAR * lppTable;
|
|
} IMessage_GetRecipientTable_Params, FAR * LPIMessage_GetRecipientTable_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_ModifyRecipients_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
LPADRLIST lpMods;
|
|
} IMessage_ModifyRecipients_Params, FAR * LPIMessage_ModifyRecipients_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_SubmitMessage_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
} IMessage_SubmitMessage_Params, FAR * LPIMessage_SubmitMessage_Params;
|
|
|
|
|
|
typedef struct _tagIMessage_SetReadFlag_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG ulFlags;
|
|
} IMessage_SetReadFlag_Params, FAR * LPIMessage_SetReadFlag_Params;
|
|
|
|
|
|
|
|
/**************************** IStream *********************************/
|
|
|
|
|
|
typedef struct _tagIStream_Read_Params
|
|
{
|
|
LPVOID This;
|
|
VOID HUGEP * pv;
|
|
ULONG cb;
|
|
ULONG FAR * pcbRead;
|
|
} IStream_Read_Params, FAR * LPIStream_Read_Params;
|
|
|
|
typedef struct _tagIStream_Write_Params
|
|
{
|
|
LPVOID This;
|
|
VOID const HUGEP * pv;
|
|
ULONG cb;
|
|
ULONG FAR * pcbWritten;
|
|
} IStream_Write_Params, FAR * LPIStream_Write_Params;
|
|
|
|
typedef struct _tagIStream_Seek_Params
|
|
{
|
|
LPVOID This;
|
|
LARGE_INTEGER_ARG dlibMove;
|
|
DWORD dwOrigin;
|
|
ULARGE_INTEGER FAR * plibNewPosition;
|
|
} IStream_Seek_Params, FAR * LPIStream_Seek_Params;
|
|
|
|
typedef struct _tagIStream_SetSize_Params
|
|
{
|
|
LPVOID This;
|
|
ULARGE_INTEGER_ARG libNewSize;
|
|
} IStream_SetSize_Params, FAR * LPIStream_SetSize_Params;
|
|
|
|
typedef struct _tagIStream_CopyTo_Params
|
|
{
|
|
LPVOID This;
|
|
IStream FAR * pstm;
|
|
ULARGE_INTEGER cb;
|
|
ULARGE_INTEGER FAR * pcbRead;
|
|
ULARGE_INTEGER FAR * pcbWritten;
|
|
} IStream_CopyTo_Params, FAR * LPIStream_CopyTo_Params;
|
|
|
|
typedef struct _tagIStream_Commit_Params
|
|
{
|
|
LPVOID This;
|
|
DWORD grfCommitFlags;
|
|
} IStream_Commit_Params, FAR * LPIStream_Commit_Params;
|
|
|
|
typedef struct _tagIStream_Revert_Params
|
|
{
|
|
LPVOID This;
|
|
} IStream_Revert_Params, FAR * LPIStream_Revert_Params;
|
|
|
|
typedef struct _tagIStream_LockRegion_Params
|
|
{
|
|
LPVOID This;
|
|
ULARGE_INTEGER_ARG libOffset;
|
|
ULARGE_INTEGER_ARG_2 cb;
|
|
DWORD dwLockType;
|
|
} IStream_LockRegion_Params, FAR * LPIStream_LockRegion_Params;
|
|
|
|
typedef struct _tagIStream_UnlockRegion_Params
|
|
{
|
|
LPVOID This;
|
|
ULARGE_INTEGER_ARG libOffset;
|
|
ULARGE_INTEGER_ARG_2 cb;
|
|
DWORD dwLockType;
|
|
} IStream_UnlockRegion_Params, FAR * LPIStream_UnlockRegion_Params;
|
|
|
|
typedef struct _tagIStream_Stat_Params
|
|
{
|
|
LPVOID This;
|
|
STATSTG FAR * pstatstg;
|
|
DWORD grfStatFlag;
|
|
} IStream_Stat_Params, FAR * LPIStream_Stat_Params;
|
|
|
|
typedef struct _tagIStream_Clone_Params
|
|
{
|
|
LPVOID This;
|
|
IStream FAR * FAR * ppstm;
|
|
} IStream_Clone_Params, FAR * LPIStream_Clone_Params;
|
|
|
|
/************************* IMAPIAdviseSink *****************************/
|
|
|
|
typedef struct _tagIMAPIAdviseSink_OnNotify_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cNotif;
|
|
LPNOTIFICATION lpNotifications;
|
|
} IMAPIAdviseSink_OnNotify_Params, FAR * LPIMAPIAdviseSink_OnNotify_Params;
|
|
|
|
|
|
/***************** IWABObject *********************/
|
|
|
|
typedef struct _tagIWABObject_GetLastError_Params
|
|
{
|
|
LPVOID This;
|
|
HRESULT hResult;
|
|
ULONG ulFlags;
|
|
LPMAPIERROR FAR * lppMAPIError;
|
|
} IWABObject_GetLastError_Params, FAR * LPIWABOBJECT_GetLastError_Params;
|
|
|
|
typedef struct _tagIWABObject_AllocateBuffer_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbSize;
|
|
LPVOID FAR * lppBuffer;
|
|
} IWABObject_AllocateBuffer_Params, FAR * LPIWABOBJECT_AllocateBuffer_Params;
|
|
|
|
typedef struct _tagIWABObject_AllocateMore_Params
|
|
{
|
|
LPVOID This;
|
|
ULONG cbSize;
|
|
LPVOID lpObject;
|
|
LPVOID FAR * lppBuffer;
|
|
} IWABObject_AllocateMore_Params, FAR * LPIWABOBJECT_AllocateMore_Params;
|
|
|
|
typedef struct _tagIWABObject_FreeBuffer_Params
|
|
{
|
|
LPVOID This;
|
|
LPVOID lpObject;
|
|
} IWABObject_FreeBuffer_Params, FAR * LPIWABOBJECT_FreeBuffer_Params;
|
|
|
|
typedef struct _tagIWABObject_Backup_Params
|
|
{
|
|
LPVOID This;
|
|
LPTSTR lpFileName;
|
|
} IWABObject_Backup_Params, FAR * LPIWABOBJECT_Backup_Params;
|
|
|
|
typedef struct _tagIWABObject_Import_Params
|
|
{
|
|
LPVOID This;
|
|
LPTSTR lpFileName;
|
|
} IWABObject_Import_Params, FAR * LPIWABOBJECT_Import_Params;
|
|
|
|
|
|
|
|
/************************** Provider INIT ******************************/
|
|
|
|
//
|
|
//typedef HRESULT (STDMAPIINITCALLTYPE MSPROVIDERINIT)(
|
|
// HINSTANCE hInstance,
|
|
// LPMALLOC lpMalloc, /* AddRef() if you keep it */
|
|
// LPALLOCATEBUFFER lpAllocateBuffer, /* -> AllocateBuffer */
|
|
// LPALLOCATEMORE lpAllocateMore, /* -> AllocateMore */
|
|
// LPFREEBUFFER lpFreeBuffer, /* -> FreeBuffer */
|
|
// ULONG ulFlags,
|
|
// ULONG ulMAPIVer,
|
|
// ULONG FAR * lpulProviderVer,
|
|
// LPMSPROVIDER FAR * lppMSProvider
|
|
//);
|
|
//
|
|
//typedef HRESULT (STDMAPIINITCALLTYPE XPPROVIDERINIT)(
|
|
// HINSTANCE hInstance,
|
|
// LPMALLOC lpMalloc,
|
|
// LPALLOCATEBUFFER lpAllocateBuffer,
|
|
// LPALLOCATEMORE lpAllocateMore,
|
|
// LPFREEBUFFER lpFreeBuffer,
|
|
// ULONG ulFlags,
|
|
// ULONG ulMAPIVer,
|
|
// ULONG FAR * lpulProviderVer,
|
|
// LPXPPROVIDER FAR * lppXPProvider);
|
|
//
|
|
//
|
|
//typedef HRESULT (STDMAPIINITCALLTYPE ABPROVIDERINIT)(
|
|
// HINSTANCE hInstance,
|
|
// LPMALLOC lpMalloc,
|
|
// LPALLOCATEBUFFER lpAllocateBuffer,
|
|
// LPALLOCATEMORE lpAllocateMore,
|
|
// LPFREEBUFFER lpFreeBuffer,
|
|
// ULONG ulFlags,
|
|
// ULONG ulMAPIVer,
|
|
// ULONG FAR * lpulProviderVer,
|
|
// LPABPROVIDER FAR * lppABProvider
|
|
//);
|
|
|
|
|
|
//typedef SCODE (STDMAPIINITCALLTYPE OPTIONCALLBACK)(
|
|
// HINSTANCE hInst,
|
|
// LPMALLOC lpMalloc,
|
|
// ULONG ulFlags,
|
|
// ULONG cbOptionData,
|
|
// LPBYTE lpbOptionData,
|
|
// LPMAPISUP lpMAPISup,
|
|
// LPMAPIPROP lpDataSource,
|
|
// LPMAPIPROP FAR *lppWrappedSource,
|
|
// LPTSTR FAR * lppszErrorMsg,
|
|
// LPTSTR FAR * lppszErrorComponent,
|
|
// ULONG FAR * lpulErrorContext);
|
|
|
|
|
|
|
|
#endif /* STRUCTS_H */
|