1/** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6#ifndef _INC_VALIDATE 7#define _INC_VALIDATE 8 9#ifdef __cplusplus 10extern "C" { 11#endif 12 13#include <mapiutil.h> 14#include <stddef.h> 15#include <stdarg.h> 16 17#define MAKE_ENUM(Method,Interface) Interface##_##Method 18 19 typedef enum _tagMethods { 20 MAKE_ENUM(QueryInterface,IUnknown) = 0,MAKE_ENUM(AddRef,IUnknown),MAKE_ENUM(Release,IUnknown),MAKE_ENUM(GetLastError,IMAPIProp), 21 MAKE_ENUM(SaveChanges,IMAPIProp),MAKE_ENUM(GetProps,IMAPIProp),MAKE_ENUM(GetPropList,IMAPIProp),MAKE_ENUM(OpenProperty,IMAPIProp), 22 MAKE_ENUM(SetProps,IMAPIProp),MAKE_ENUM(DeleteProps,IMAPIProp),MAKE_ENUM(CopyTo,IMAPIProp),MAKE_ENUM(CopyProps,IMAPIProp), 23 MAKE_ENUM(GetNamesFromIDs,IMAPIProp),MAKE_ENUM(GetIDsFromNames,IMAPIProp),MAKE_ENUM(GetLastError,IMAPITable),MAKE_ENUM(Advise,IMAPITable), 24 MAKE_ENUM(Unadvise,IMAPITable),MAKE_ENUM(GetStatus,IMAPITable),MAKE_ENUM(SetColumns,IMAPITable),MAKE_ENUM(QueryColumns,IMAPITable), 25 MAKE_ENUM(GetRowCount,IMAPITable),MAKE_ENUM(SeekRow,IMAPITable),MAKE_ENUM(SeekRowApprox,IMAPITable),MAKE_ENUM(QueryPosition,IMAPITable), 26 MAKE_ENUM(FindRow,IMAPITable),MAKE_ENUM(Restrict,IMAPITable),MAKE_ENUM(CreateBookmark,IMAPITable),MAKE_ENUM(FreeBookmark,IMAPITable), 27 MAKE_ENUM(SortTable,IMAPITable),MAKE_ENUM(QuerySortOrder,IMAPITable),MAKE_ENUM(QueryRows,IMAPITable),MAKE_ENUM(Abort,IMAPITable), 28 MAKE_ENUM(ExpandRow,IMAPITable),MAKE_ENUM(CollapseRow,IMAPITable),MAKE_ENUM(WaitForCompletion,IMAPITable),MAKE_ENUM(GetCollapseState,IMAPITable), 29 MAKE_ENUM(SetCollapseState,IMAPITable),MAKE_ENUM(GetContentsTable,IMAPIContainer),MAKE_ENUM(GetHierarchyTable,IMAPIContainer), 30 MAKE_ENUM(OpenEntry,IMAPIContainer),MAKE_ENUM(SetSearchCriteria,IMAPIContainer),MAKE_ENUM(GetSearchCriteria,IMAPIContainer), 31 MAKE_ENUM(CreateEntry,IABContainer),MAKE_ENUM(CopyEntries,IABContainer),MAKE_ENUM(DeleteEntries,IABContainer),MAKE_ENUM(ResolveNames,IABContainer), 32 MAKE_ENUM(CreateEntry,IDistList),MAKE_ENUM(CopyEntries,IDistList),MAKE_ENUM(DeleteEntries,IDistList),MAKE_ENUM(ResolveNames,IDistList), 33 MAKE_ENUM(CreateMessage,IMAPIFolder),MAKE_ENUM(CopyMessages,IMAPIFolder),MAKE_ENUM(DeleteMessages,IMAPIFolder),MAKE_ENUM(CreateFolder,IMAPIFolder), 34 MAKE_ENUM(CopyFolder,IMAPIFolder),MAKE_ENUM(DeleteFolder,IMAPIFolder),MAKE_ENUM(SetReadFlags,IMAPIFolder),MAKE_ENUM(GetMessageStatus,IMAPIFolder), 35 MAKE_ENUM(SetMessageStatus,IMAPIFolder),MAKE_ENUM(SaveContentsSort,IMAPIFolder),MAKE_ENUM(EmptyFolder,IMAPIFolder),MAKE_ENUM(Advise,IMsgStore), 36 MAKE_ENUM(Unadvise,IMsgStore),MAKE_ENUM(CompareEntryIDs,IMsgStore),MAKE_ENUM(OpenEntry,IMsgStore),MAKE_ENUM(SetReceiveFolder,IMsgStore), 37 MAKE_ENUM(GetReceiveFolder,IMsgStore),MAKE_ENUM(GetReceiveFolderTable,IMsgStore),MAKE_ENUM(StoreLogoff,IMsgStore),MAKE_ENUM(AbortSubmit,IMsgStore), 38 MAKE_ENUM(GetOutgoingQueue,IMsgStore),MAKE_ENUM(SetLockState,IMsgStore),MAKE_ENUM(FinishedMsg,IMsgStore),MAKE_ENUM(NotifyNewMail,IMsgStore), 39 MAKE_ENUM(GetAttachmentTable,IMessage),MAKE_ENUM(OpenAttach,IMessage),MAKE_ENUM(CreateAttach,IMessage),MAKE_ENUM(DeleteAttach,IMessage), 40 MAKE_ENUM(GetRecipientTable,IMessage),MAKE_ENUM(ModifyRecipients,IMessage),MAKE_ENUM(SubmitMessage,IMessage),MAKE_ENUM(SetReadFlag,IMessage), 41 MAKE_ENUM(Shutdown,IABProvider),MAKE_ENUM(Logon,IABProvider),MAKE_ENUM(GetLastError,IABLogon),MAKE_ENUM(Logoff,IABLogon), 42 MAKE_ENUM(OpenEntry,IABLogon),MAKE_ENUM(CompareEntryIDs,IABLogon),MAKE_ENUM(Advise,IABLogon),MAKE_ENUM(Unadvise,IABLogon), 43 MAKE_ENUM(OpenStatusEntry,IABLogon),MAKE_ENUM(OpenTemplateID,IABLogon),MAKE_ENUM(GetOneOffTable,IABLogon),MAKE_ENUM(PrepareRecips,IABLogon), 44 MAKE_ENUM(Shutdown,IXPProvider),MAKE_ENUM(TransportLogon,IXPProvider),MAKE_ENUM(AddressTypes,IXPLogon),MAKE_ENUM(RegisterOptions,IXPLogon), 45 MAKE_ENUM(TransportNotify,IXPLogon),MAKE_ENUM(Idle,IXPLogon),MAKE_ENUM(TransportLogoff,IXPLogon),MAKE_ENUM(SubmitMessage,IXPLogon), 46 MAKE_ENUM(EndMessage,IXPLogon),MAKE_ENUM(Poll,IXPLogon),MAKE_ENUM(StartMessage,IXPLogon),MAKE_ENUM(OpenStatusEntry,IXPLogon), 47 MAKE_ENUM(ValidateState,IXPLogon),MAKE_ENUM(FlushQueues,IXPLogon),MAKE_ENUM(Shutdown,IMSProvider),MAKE_ENUM(Logon,IMSProvider), 48 MAKE_ENUM(SpoolerLogon,IMSProvider),MAKE_ENUM(CompareStoreIDs,IMSProvider),MAKE_ENUM(GetLastError,IMSLogon),MAKE_ENUM(Logoff,IMSLogon), 49 MAKE_ENUM(OpenEntry,IMSLogon),MAKE_ENUM(CompareEntryIDs,IMSLogon),MAKE_ENUM(Advise,IMSLogon),MAKE_ENUM(Unadvise,IMSLogon), 50 MAKE_ENUM(OpenStatusEntry,IMSLogon),MAKE_ENUM(GetLastError,IMAPIControl),MAKE_ENUM(Activate,IMAPIControl),MAKE_ENUM(GetState,IMAPIControl), 51 MAKE_ENUM(ValidateState,IMAPIStatus),MAKE_ENUM(SettingsDialog,IMAPIStatus),MAKE_ENUM(ChangePassword,IMAPIStatus),MAKE_ENUM(FlushQueues,IMAPIStatus), 52 MAKE_ENUM(Read,IStream),MAKE_ENUM(Write,IStream),MAKE_ENUM(Seek,IStream),MAKE_ENUM(SetSize,IStream),MAKE_ENUM(CopyTo,IStream), 53 MAKE_ENUM(Commit,IStream),MAKE_ENUM(Revert,IStream),MAKE_ENUM(LockRegion,IStream),MAKE_ENUM(UnlockRegion,IStream),MAKE_ENUM(Stat,IStream), 54 MAKE_ENUM(Clone,IStream),MAKE_ENUM(OnNotify,IMAPIAdviseSink) 55 } METHODS; 56#if defined(_X86_) 57#ifdef __cplusplus 58#define ValidateParameters(eMethod,First) { HRESULT _hr_; _hr_ = __CPPValidateParameters(eMethod,(LPVOID) &First); if (HR_FAILED(_hr_)) return (_hr_); } 59#define UlValidateParameters(eMethod,First) { HRESULT _hr_; _hr_ = __CPPValidateParameters(eMethod,&First); if (HR_FAILED(_hr_)) return (ULONG) (_hr_); } 60#define CheckParameters(eMethod,First) AssertSz(HR_SUCCEEDED(__CPPValidateParameters(eMethod,&First)),"Parameter validation failed for method called by MAPI!") 61#else 62#define ValidateParameters(eMethod,ppThis) { HRESULT _hr_; _hr_ = __ValidateParameters(eMethod,ppThis); if (HR_FAILED(_hr_)) return (_hr_); } 63#define UlValidateParameters(eMethod,ppThis) { HRESULT _hr_; _hr_ = __ValidateParameters(eMethod,ppThis); if (HR_FAILED(_hr_)) return (ULONG) (_hr_); } 64#define CheckParameters(eMethod,ppThis) AssertSz(HR_SUCCEEDED(__ValidateParameters(eMethod,ppThis)),"Parameter validation failed for method called by MAPI!") 65#endif 66#endif 67 68#define FBadPropVal(lpPropVal) (FAILED(ScCountProps(1,lpPropVal,NULL))) 69#define FBadRgPropVal(lpPropVal,cValues) (FAILED(ScCountProps(cValues,lpPropVal,NULL))) 70#define FBadAdrList(lpAdrList) (AssertSz((offsetof(ADRLIST,cEntries)==offsetof(SRowSet,cRows)) && (offsetof(ADRLIST,aEntries)==offsetof(SRowSet,aRow)) && (offsetof(ADRENTRY,cValues)==offsetof(SRow,cValues)) && (offsetof(ADRENTRY,rgPropVals)==offsetof(SRow,lpProps)) ,"ADRLIST doesn't match SRowSet") || FBadRowSet((LPSRowSet) lpAdrList)) 71 72 STDAPI_(WINBOOL) FBadRglpszW(LPWSTR *lppszW,ULONG cStrings); 73 STDAPI_(WINBOOL) FBadRowSet(LPSRowSet lpRowSet); 74 STDAPI_(WINBOOL) FBadRglpNameID(LPMAPINAMEID *lppNameId,ULONG cNames); 75 STDAPI_(WINBOOL) FBadEntryList(LPENTRYLIST lpEntryList); 76 77#define BAD_STANDARD_OBJ(lpObj,prefix,method,lpVtbl) (IsBadWritePtr((lpObj),sizeof(*lpObj)) || IsBadReadPtr((void *) &(lpObj->lpVtbl->method),sizeof(LPVOID)) ||((LPVOID) (lpObj->lpVtbl->method)!=(LPVOID) (prefix##method))) 78#define FBadUnknown(lpObj) (IsBadReadPtr((lpObj),sizeof(LPVOID)) || IsBadReadPtr((lpObj)->lpVtbl,3 *sizeof(LPUNKNOWN)) || IsBadCodePtr((FARPROC)(lpObj)->lpVtbl->QueryInterface)) 79#define FBadQueryInterface(lpObj,riid,ppvObj) (IsBadReadPtr(riid,sizeof(IID)) || IsBadWritePtr(ppvObj,sizeof(LPVOID))) 80#define FBadAddRef(lpObj) FALSE 81#define FBadRelease(lpObj) FALSE 82#define FBadGetLastError(lpObj,hResult,ulFlags,lppMAPIError) (IsBadWritePtr(lppMAPIError,sizeof(LPMAPIERROR))) 83#define FBadSaveChanges(lpObj,ulFlags) FALSE 84#define FBadGetProps(lpObj,lpPTagA,lpcValues,lppPropArray) ((lpPTagA && (IsBadReadPtr(lpPTagA,sizeof(ULONG)) || IsBadReadPtr(lpPTagA,(UINT)((lpPTagA->cValues + 1) *sizeof(ULONG))))) || IsBadWritePtr(lpcValues,sizeof(ULONG)) || IsBadWritePtr(lppPropArray,sizeof(LPSPropValue))) 85#define FBadGetPropList(lpObj,lppPTagA) (IsBadWritePtr(lppPTagA,sizeof(LPSPropTagArray *))) 86#define FBadOpenProperty(lpObj,ulPropTag,lpiid,ulInterfaceOptions,ulFlags ,lppUnk) (IsBadReadPtr(lpiid,sizeof(IID)) || IsBadWritePtr(lppUnk,sizeof (LPUNKNOWN *))) 87#define FBadSetProps(lpObj,cValues,lpPropArray,lppProblems) (FBadRgPropVal(lpPropArray,(UINT) cValues) || (lppProblems && IsBadWritePtr(lppProblems,sizeof(LPSPropProblemArray)))) 88#define FBadDeleteProps(lpObj,lpPTagA,lppProblems) ((!lpPTagA || (IsBadReadPtr(lpPTagA,sizeof(ULONG)) || IsBadReadPtr(lpPTagA,(UINT)((lpPTagA->cValues + 1) *sizeof(ULONG))))) || (lppProblems && IsBadWritePtr(lppProblems,sizeof(LPSPropProblemArray)))) 89#define FBadCopyTo(lpIPDAT,ciidExclude,rgiidExclude,lpExcludeProps ,ulUIParam,lpProgress,lpInterface,lpDestObj ,ulFlags,lppProblems) ((ciidExclude && (IsBadReadPtr(rgiidExclude,(UINT)(ciidExclude *sizeof(IID))))) || (lpExcludeProps && (IsBadReadPtr(lpExcludeProps,sizeof(ULONG)) || IsBadReadPtr(lpExcludeProps ,(UINT)((lpExcludeProps->cValues + 1) *sizeof(ULONG))))) || (lpProgress && FBadUnknown(lpProgress)) || (lpInterface && IsBadReadPtr(lpInterface,sizeof(IID))) || IsBadReadPtr(lpDestObj,sizeof(LPVOID)) || (lppProblems && IsBadWritePtr(lppProblems,sizeof(LPSPropProblemArray)))) 90#define FBadCopyProps(lpIPDAT,lpPropTagArray ,ulUIParam,lpProgress,lpInterface,lpDestObj ,ulFlags,lppProblems) ((lpPropTagArray && (IsBadReadPtr(lpPropTagArray,sizeof(ULONG)) || IsBadReadPtr(lpPropTagArray ,(UINT)((lpPropTagArray->cValues + 1) *sizeof(ULONG))))) || (lpProgress && FBadUnknown(lpProgress)) || (lpInterface && IsBadReadPtr(lpInterface,sizeof(IID))) || IsBadReadPtr(lpDestObj,sizeof(LPVOID)) || (lppProblems && IsBadWritePtr(lppProblems,sizeof(LPSPropProblemArray)))) 91#define FBadGetNamesFromIDs(lpIPDAT,lppPropTags,lpPropSetGuid,ulFlags,lpcPropNames,lpppPropNames) (IsBadReadPtr(lppPropTags,sizeof(LPSPropTagArray)) || (lpPropSetGuid && IsBadReadPtr(lpPropSetGuid,sizeof(GUID))) || (*lppPropTags && (IsBadReadPtr(*lppPropTags,sizeof(ULONG)) || IsBadReadPtr(*lppPropTags ,(UINT)(((*lppPropTags)->cValues + 1) *sizeof(ULONG))))) || IsBadWritePtr(lpcPropNames,sizeof (ULONG)) || IsBadWritePtr(lpppPropNames,sizeof (LPVOID *))) 92#define FBadGetIDsFromNames(lpIPDAT,cPropNames,lppPropNames,ulFlags ,lppPropTags) ((cPropNames && FBadRglpNameID(lppPropNames,cPropNames)) || IsBadWritePtr(lppPropTags,sizeof(LPULONG *))) 93 94 STDAPI_(ULONG) FBadRestriction(LPSRestriction lpres); 95 STDAPI_(ULONG) FBadPropTag(ULONG ulPropTag); 96 STDAPI_(ULONG) FBadRow(LPSRow lprow); 97 STDAPI_(ULONG) FBadProp(LPSPropValue lpprop); 98 STDAPI_(ULONG) FBadSortOrderSet(LPSSortOrderSet lpsos); 99 STDAPI_(ULONG) FBadColumnSet(LPSPropTagArray lpptaCols); 100 101#define BASED_STACK 102 103 HRESULT WINAPI __CPPValidateParameters(METHODS eMethod,const LPVOID ppFirst); 104 HRESULT WINAPI __ValidateParameters(METHODS eMethod,LPVOID ppThis); 105 106#if defined(_X86_) 107#define ArgSize(T) ((sizeof(T)+3)/4) 108#define MakeArg1(idx,a1) memcpy(__rgArgs+idx,&a1,ArgSize(a1)*4) 109#define MakeArg2(idx,a1,a2) MakeArg1(idx,a1); MakeArg1(idx+ArgSize(a1),a2) 110#define MakeArg3(idx,a1,a2,a3) MakeArg1(idx,a1); MakeArg2(idx+ArgSize(a1),a2,a3) 111#define MakeArg4(idx,a1,a2,a3,a4) MakeArg1(idx,a1); MakeArg3(idx+ArgSize(a1),a2,a3,a4) 112#define MakeArg5(idx,a1,a2,a3,a4,a5) MakeArg1(idx,a1); MakeArg4(idx+ArgSize(a1),a2,a3,a4,a5) 113#define MakeArg6(idx,a1,a2,a3,a4,a5,a6) MakeArg1(idx,a1); MakeArg5(idx+ArgSize(a1),a2,a3,a4,a5,a6) 114#define MakeArg7(idx,a1,a2,a3,a4,a5,a6,a7) MakeArg1(idx,a1); MakeArg6(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7) 115#define MakeArg8(idx,a1,a2,a3,a4,a5,a6,a7,a8) MakeArg1(idx,a1); MakeArg7(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8) 116#define MakeArg9(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9) MakeArg1(idx,a1); MakeArg8(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9) 117#define MakeArg10(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) MakeArg1(idx,a1); MakeArg9(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10) 118#define MakeArg11(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) MakeArg1(idx,a1); MakeArg10(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) 119#define MakeArg12(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) MakeArg1(idx,a1); MakeArg11(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) 120#define MakeArg13(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) MakeArg1(idx,a1); MakeArg12(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 121#define MakeArg14(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) MakeArg1(idx,a1); MakeArg13(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) 122#define MakeArg15(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) MakeArg1(idx,a1); MakeArg14(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) 123#define MakeArg16(idx,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) MakeArg1(idx,a1); MakeArg15(idx+ArgSize(a1),a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) 124 125#define MakeArray1(a1) DWORD __rgArgs[ArgSize(a1)]; MakeArg1(0,a1) 126#define MakeArray2(a1,a2) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2)]; MakeArg2(0,a1,a2) 127#define MakeArray3(a1,a2,a3) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3)]; MakeArg3(0,a1,a2,a3) 128#define MakeArray4(a1,a2,a3,a4) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4)]; MakeArg4(0,a1,a2,a3,a4) 129#define MakeArray5(a1,a2,a3,a4,a5) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5)]; MakeArg5(0,a1,a2,a3,a4,a5) 130#define MakeArray6(a1,a2,a3,a4,a5,a6) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6)]; MakeArg6(0,a1,a2,a3,a4,a5,a6) 131#define MakeArray7(a1,a2,a3,a4,a5,a6,a7) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7)]; MakeArg7(0,a1,a2,a3,a4,a5,a6,a7) 132#define MakeArray8(a1,a2,a3,a4,a5,a6,a7,a8) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8)]; MakeArg8(0,a1,a2,a3,a4,a5,a6,a7,a8) 133#define MakeArray9(a1,a2,a3,a4,a5,a6,a7,a8,a9) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9)]; MakeArg9(0,a1,a2,a3,a4,a5,a6,a7,a8,a9) 134#define MakeArray10(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10)]; MakeArg10(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 135#define MakeArray11(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11)]; MakeArg11(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) 136#define MakeArray12(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11) + ArgSize(a12)]; MakeArg12(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) 137#define MakeArray13(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11) + ArgSize(a12) + ArgSize(a13)]; MakeArg13(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 138#define MakeArray14(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11) + ArgSize(a12) + ArgSize(a13) + ArgSize(a14)]; MakeArg14(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) 139#define MakeArray15(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11) + ArgSize(a12) + ArgSize(a13) + ArgSize(a14) + ArgSize(a15)]; MakeArg15(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) 140#define MakeArray16(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) DWORD __rgArgs[ArgSize(a1) + ArgSize(a2) + ArgSize(a3) + ArgSize(a4) + ArgSize(a5) + ArgSize(a6) + ArgSize(a7) + ArgSize(a8) + ArgSize(a9) + ArgSize(a10) + ArgSize(a11) + ArgSize(a12) + ArgSize(a13) + ArgSize(a14) + ArgSize(a15) + ArgSize(a16)]; MakeArg16(0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) 141 142#define ValidateParameters1(m,a1) 143#define ValidateParameters2(m,a1,a2) { HRESULT _hr_; MakeArray1(a2); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 144#define ValidateParameters3(m,a1,a2,a3) { HRESULT _hr_; MakeArray2(a2,a3); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 145#define ValidateParameters4(m,a1,a2,a3,a4) { HRESULT _hr_; MakeArray3(a2,a3,a4); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 146#define ValidateParameters5(m,a1,a2,a3,a4,a5) { HRESULT _hr_; MakeArray4(a2,a3,a4,a5); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 147#define ValidateParameters6(m,a1,a2,a3,a4,a5,a6) { HRESULT _hr_; MakeArray5(a2,a3,a4,a5,a6); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 148#define ValidateParameters7(m,a1,a2,a3,a4,a5,a6,a7) { HRESULT _hr_; MakeArray6(a2,a3,a4,a5,a6,a7); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 149#define ValidateParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) { HRESULT _hr_; MakeArray7(a2,a3,a4,a5,a6,a7,a8); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 150#define ValidateParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) { HRESULT _hr_; MakeArray8(a2,a3,a4,a5,a6,a7,a8,a9); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 151#define ValidateParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) { HRESULT _hr_; MakeArray9(a2,a3,a4,a5,a6,a7,a8,a9,a10); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 152#define ValidateParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) { HRESULT _hr_; MakeArray10(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 153#define ValidateParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) { HRESULT _hr_; MakeArray11(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 154#define ValidateParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) { HRESULT _hr_; MakeArray12(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 155#define ValidateParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) { HRESULT _hr_; MakeArray13(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 156#define ValidateParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) { HRESULT _hr_; MakeArray14(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 157#define ValidateParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) { HRESULT _hr_; MakeArray15(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return (_hr_); } 158 159#define UlValidateParameters1(m,a1) 160#define UlValidateParameters2(m,a1,a2) { HRESULT _hr_; MakeArray1(a2); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 161#define UlValidateParameters3(m,a1,a2,a3) { HRESULT _hr_; MakeArray2(a2,a3); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 162#define UlValidateParameters4(m,a1,a2,a3,a4) { HRESULT _hr_; MakeArray3(a2,a3,a4); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 163#define UlValidateParameters5(m,a1,a2,a3,a4,a5) { HRESULT _hr_; MakeArray4(a2,a3,a4,a5); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 164#define UlValidateParameters6(m,a1,a2,a3,a4,a5,a6) { HRESULT _hr_; MakeArray5(a2,a3,a4,a5,a6); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 165#define UlValidateParameters7(m,a1,a2,a3,a4,a5,a6,a7) { HRESULT _hr_; MakeArray6(a2,a3,a4,a5,a6,a7); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 166#define UlValidateParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) { HRESULT _hr_; MakeArray7(a2,a3,a4,a5,a6,a7,a8); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 167#define UlValidateParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) { HRESULT _hr_; MakeArray8(a2,a3,a4,a5,a6,a7,a8,a9); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 168#define UlValidateParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) { HRESULT _hr_; MakeArray9(a2,a3,a4,a5,a6,a7,a8,a9,a10); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 169#define UlValidateParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) { HRESULT _hr_; MakeArray10(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 170#define UlValidateParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) { HRESULT _hr_; MakeArray11(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 171#define UlValidateParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) { HRESULT _hr_; MakeArray12(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 172#define UlValidateParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) { HRESULT _hr_; MakeArray13(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 173#define UlValidateParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) { HRESULT _hr_; MakeArray14(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 174#define UlValidateParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) { HRESULT _hr_; MakeArray15(a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16); _hr_ = HrValidateParameters(m,(void **)__rgArgs); if (HR_FAILED(_hr_)) return ((ULONG)_hr_); } 175 176#define CheckParameters1(m,a1) 177#define CheckParameters2(m,a1,a2) 178#define CheckParameters3(m,a1,a2,a3) 179#define CheckParameters4(m,a1,a2,a3,a4) 180#define CheckParameters5(m,a1,a2,a3,a4,a5) 181#define CheckParameters6(m,a1,a2,a3,a4,a5,a6) 182#define CheckParameters7(m,a1,a2,a3,a4,a5,a6,a7) 183#define CheckParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) 184#define CheckParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) 185#define CheckParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 186#define CheckParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) 187#define CheckParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) 188#define CheckParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 189#define CheckParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) 190#define CheckParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) 191#define CheckParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) 192 193#else 194#define ValidateParms(x) { HRESULT _hr_ = HrValidateParametersV x; if (HR_FAILED(_hr_)) return (_hr_); } 195#define UlValidateParms(x) { HRESULT _hr_ = HrValidateParametersV x; if (HR_FAILED(_hr_)) return (ULONG)(_hr_); } 196#define CheckParms(x) AssertSz(HR_SUCCEEDED(HrValidateParametersV x),"Parameter validation failed for method called by MAPI!") 197 198#define ValidateParameters1(m,a1) ValidateParms((m,a1)) 199#define ValidateParameters2(m,a1,a2) ValidateParms((m,a1,a2)) 200#define ValidateParameters3(m,a1,a2,a3) ValidateParms((m,a1,a2,a3)) 201#define ValidateParameters4(m,a1,a2,a3,a4) ValidateParms((m,a1,a2,a3,a4)) 202#define ValidateParameters5(m,a1,a2,a3,a4,a5) ValidateParms((m,a1,a2,a3,a4,a5)) 203#define ValidateParameters6(m,a1,a2,a3,a4,a5,a6) ValidateParms((m,a1,a2,a3,a4,a5,a6)) 204#define ValidateParameters7(m,a1,a2,a3,a4,a5,a6,a7) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7)) 205#define ValidateParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8)) 206#define ValidateParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9)) 207#define ValidateParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) 208#define ValidateParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)) 209#define ValidateParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)) 210#define ValidateParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)) 211#define ValidateParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)) 212#define ValidateParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)) 213#define ValidateParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) ValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16)) 214 215#define UlValidateParameters1(m,a1) UlValidateParms((m,a1)) 216#define UlValidateParameters2(m,a1,a2) UlValidateParms((m,a1,a2)) 217#define UlValidateParameters3(m,a1,a2,a3) UlValidateParms((m,a1,a2,a3)) 218#define UlValidateParameters4(m,a1,a2,a3,a4) UlValidateParms((m,a1,a2,a3,a4)) 219#define UlValidateParameters5(m,a1,a2,a3,a4,a5) UlValidateParms((m,a1,a2,a3,a4,a5)) 220#define UlValidateParameters6(m,a1,a2,a3,a4,a5,a6) UlValidateParms((m,a1,a2,a3,a4,a5,a6)) 221#define UlValidateParameters7(m,a1,a2,a3,a4,a5,a6,a7) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7)) 222#define UlValidateParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8)) 223#define UlValidateParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9)) 224#define UlValidateParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) 225#define UlValidateParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)) 226#define UlValidateParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)) 227#define UlValidateParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)) 228#define UlValidateParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)) 229#define UlValidateParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)) 230#define UlValidateParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) UlValidateParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16)) 231 232#define CheckParameters1(m,a1) CheckParms((m,a1)) 233#define CheckParameters2(m,a1,a2) CheckParms((m,a1,a2)) 234#define CheckParameters3(m,a1,a2,a3) CheckParms((m,a1,a2,a3)) 235#define CheckParameters4(m,a1,a2,a3,a4) CheckParms((m,a1,a2,a3,a4)) 236#define CheckParameters5(m,a1,a2,a3,a4,a5) CheckParms((m,a1,a2,a3,a4,a5)) 237#define CheckParameters6(m,a1,a2,a3,a4,a5,a6) CheckParms((m,a1,a2,a3,a4,a5,a6)) 238#define CheckParameters7(m,a1,a2,a3,a4,a5,a6,a7) CheckParms((m,a1,a2,a3,a4,a5,a6,a7)) 239#define CheckParameters8(m,a1,a2,a3,a4,a5,a6,a7,a8) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8)) 240#define CheckParameters9(m,a1,a2,a3,a4,a5,a6,a7,a8,a9) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9)) 241#define CheckParameters10(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)) 242#define CheckParameters11(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)) 243#define CheckParameters12(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)) 244#define CheckParameters13(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)) 245#define CheckParameters14(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)) 246#define CheckParameters15(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)) 247#define CheckParameters16(m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16) CheckParms((m,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16)) 248#endif 249 250#define Validate_IUnknown_QueryInterface(a1,a2,a3) ValidateParameters3(IUnknown_QueryInterface,a1,a2,a3) 251#define UlValidate_IUnknown_QueryInterface(a1,a2,a3) UlValidateParameters3(IUnknown_QueryInterface,a1,a2,a3) 252#define CheckParameters_IUnknown_QueryInterface(a1,a2,a3) CheckParameters3(IUnknown_QueryInterface,a1,a2,a3) 253 254#define Validate_IUnknown_AddRef(a1) ValidateParameters1(IUnknown_AddRef,a1) 255#define UlValidate_IUnknown_AddRef(a1) UlValidateParameters1(IUnknown_AddRef,a1) 256#define CheckParameters_IUnknown_AddRef(a1) CheckParameters1(IUnknown_AddRef,a1) 257 258#define Validate_IUnknown_Release(a1) ValidateParameters1(IUnknown_Release,a1) 259#define UlValidate_IUnknown_Release(a1) UlValidateParameters1(IUnknown_Release,a1) 260#define CheckParameters_IUnknown_Release(a1) CheckParameters1(IUnknown_Release,a1) 261 262#define Validate_IMAPIProp_GetLastError(a1,a2,a3,a4) ValidateParameters4(IMAPIProp_GetLastError,a1,a2,a3,a4) 263#define UlValidate_IMAPIProp_GetLastError(a1,a2,a3,a4) UlValidateParameters4(IMAPIProp_GetLastError,a1,a2,a3,a4) 264#define CheckParameters_IMAPIProp_GetLastError(a1,a2,a3,a4) CheckParameters4(IMAPIProp_GetLastError,a1,a2,a3,a4) 265 266#define Validate_IMAPIProp_SaveChanges(a1,a2) ValidateParameters2(IMAPIProp_SaveChanges,a1,a2) 267#define UlValidate_IMAPIProp_SaveChanges(a1,a2) UlValidateParameters2(IMAPIProp_SaveChanges,a1,a2) 268#define CheckParameters_IMAPIProp_SaveChanges(a1,a2) CheckParameters2(IMAPIProp_SaveChanges,a1,a2) 269 270#define Validate_IMAPIProp_GetProps(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIProp_GetProps,a1,a2,a3,a4,a5) 271#define UlValidate_IMAPIProp_GetProps(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIProp_GetProps,a1,a2,a3,a4,a5) 272#define CheckParameters_IMAPIProp_GetProps(a1,a2,a3,a4,a5) CheckParameters5(IMAPIProp_GetProps,a1,a2,a3,a4,a5) 273 274#define Validate_IMAPIProp_GetPropList(a1,a2,a3) ValidateParameters3(IMAPIProp_GetPropList,a1,a2,a3) 275#define UlValidate_IMAPIProp_GetPropList(a1,a2,a3) UlValidateParameters3(IMAPIProp_GetPropList,a1,a2,a3) 276#define CheckParameters_IMAPIProp_GetPropList(a1,a2,a3) CheckParameters3(IMAPIProp_GetPropList,a1,a2,a3) 277 278#define Validate_IMAPIProp_OpenProperty(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMAPIProp_OpenProperty,a1,a2,a3,a4,a5,a6) 279#define UlValidate_IMAPIProp_OpenProperty(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMAPIProp_OpenProperty,a1,a2,a3,a4,a5,a6) 280#define CheckParameters_IMAPIProp_OpenProperty(a1,a2,a3,a4,a5,a6) CheckParameters6(IMAPIProp_OpenProperty,a1,a2,a3,a4,a5,a6) 281 282#define Validate_IMAPIProp_SetProps(a1,a2,a3,a4) ValidateParameters4(IMAPIProp_SetProps,a1,a2,a3,a4) 283#define UlValidate_IMAPIProp_SetProps(a1,a2,a3,a4) UlValidateParameters4(IMAPIProp_SetProps,a1,a2,a3,a4) 284#define CheckParameters_IMAPIProp_SetProps(a1,a2,a3,a4) CheckParameters4(IMAPIProp_SetProps,a1,a2,a3,a4) 285 286#define Validate_IMAPIProp_DeleteProps(a1,a2,a3) ValidateParameters3(IMAPIProp_DeleteProps,a1,a2,a3) 287#define UlValidate_IMAPIProp_DeleteProps(a1,a2,a3) UlValidateParameters3(IMAPIProp_DeleteProps,a1,a2,a3) 288#define CheckParameters_IMAPIProp_DeleteProps(a1,a2,a3) CheckParameters3(IMAPIProp_DeleteProps,a1,a2,a3) 289 290#define Validate_IMAPIProp_CopyTo(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) ValidateParameters10(IMAPIProp_CopyTo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 291#define UlValidate_IMAPIProp_CopyTo(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) UlValidateParameters10(IMAPIProp_CopyTo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 292#define CheckParameters_IMAPIProp_CopyTo(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) CheckParameters10(IMAPIProp_CopyTo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10) 293 294#define Validate_IMAPIProp_CopyProps(a1,a2,a3,a4,a5,a6,a7,a8) ValidateParameters8(IMAPIProp_CopyProps,a1,a2,a3,a4,a5,a6,a7,a8) 295#define UlValidate_IMAPIProp_CopyProps(a1,a2,a3,a4,a5,a6,a7,a8) UlValidateParameters8(IMAPIProp_CopyProps,a1,a2,a3,a4,a5,a6,a7,a8) 296#define CheckParameters_IMAPIProp_CopyProps(a1,a2,a3,a4,a5,a6,a7,a8) CheckParameters8(IMAPIProp_CopyProps,a1,a2,a3,a4,a5,a6,a7,a8) 297 298#define Validate_IMAPIProp_GetNamesFromIDs(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMAPIProp_GetNamesFromIDs,a1,a2,a3,a4,a5,a6) 299#define UlValidate_IMAPIProp_GetNamesFromIDs(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMAPIProp_GetNamesFromIDs,a1,a2,a3,a4,a5,a6) 300#define CheckParameters_IMAPIProp_GetNamesFromIDs(a1,a2,a3,a4,a5,a6) CheckParameters6(IMAPIProp_GetNamesFromIDs,a1,a2,a3,a4,a5,a6) 301 302#define Validate_IMAPIProp_GetIDsFromNames(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIProp_GetIDsFromNames,a1,a2,a3,a4,a5) 303#define UlValidate_IMAPIProp_GetIDsFromNames(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIProp_GetIDsFromNames,a1,a2,a3,a4,a5) 304#define CheckParameters_IMAPIProp_GetIDsFromNames(a1,a2,a3,a4,a5) CheckParameters5(IMAPIProp_GetIDsFromNames,a1,a2,a3,a4,a5) 305 306#define Validate_IMAPITable_GetLastError(a1,a2,a3,a4) ValidateParameters4(IMAPITable_GetLastError,a1,a2,a3,a4) 307#define UlValidate_IMAPITable_GetLastError(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_GetLastError,a1,a2,a3,a4) 308#define CheckParameters_IMAPITable_GetLastError(a1,a2,a3,a4) CheckParameters4(IMAPITable_GetLastError,a1,a2,a3,a4) 309 310#define Validate_IMAPITable_Advise(a1,a2,a3,a4) ValidateParameters4(IMAPITable_Advise,a1,a2,a3,a4) 311#define UlValidate_IMAPITable_Advise(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_Advise,a1,a2,a3,a4) 312#define CheckParameters_IMAPITable_Advise(a1,a2,a3,a4) CheckParameters4(IMAPITable_Advise,a1,a2,a3,a4) 313 314#define Validate_IMAPITable_Unadvise(a1,a2) ValidateParameters2(IMAPITable_Unadvise,a1,a2) 315#define UlValidate_IMAPITable_Unadvise(a1,a2) UlValidateParameters2(IMAPITable_Unadvise,a1,a2) 316#define CheckParameters_IMAPITable_Unadvise(a1,a2) CheckParameters2(IMAPITable_Unadvise,a1,a2) 317 318#define Validate_IMAPITable_GetStatus(a1,a2,a3) ValidateParameters3(IMAPITable_GetStatus,a1,a2,a3) 319#define UlValidate_IMAPITable_GetStatus(a1,a2,a3) UlValidateParameters3(IMAPITable_GetStatus,a1,a2,a3) 320#define CheckParameters_IMAPITable_GetStatus(a1,a2,a3) CheckParameters3(IMAPITable_GetStatus,a1,a2,a3) 321 322#define Validate_IMAPITable_SetColumns(a1,a2,a3) ValidateParameters3(IMAPITable_SetColumns,a1,a2,a3) 323#define UlValidate_IMAPITable_SetColumns(a1,a2,a3) UlValidateParameters3(IMAPITable_SetColumns,a1,a2,a3) 324#define CheckParameters_IMAPITable_SetColumns(a1,a2,a3) CheckParameters3(IMAPITable_SetColumns,a1,a2,a3) 325 326#define Validate_IMAPITable_QueryColumns(a1,a2,a3) ValidateParameters3(IMAPITable_QueryColumns,a1,a2,a3) 327#define UlValidate_IMAPITable_QueryColumns(a1,a2,a3) UlValidateParameters3(IMAPITable_QueryColumns,a1,a2,a3) 328#define CheckParameters_IMAPITable_QueryColumns(a1,a2,a3) CheckParameters3(IMAPITable_QueryColumns,a1,a2,a3) 329 330#define Validate_IMAPITable_GetRowCount(a1,a2,a3) ValidateParameters3(IMAPITable_GetRowCount,a1,a2,a3) 331#define UlValidate_IMAPITable_GetRowCount(a1,a2,a3) UlValidateParameters3(IMAPITable_GetRowCount,a1,a2,a3) 332#define CheckParameters_IMAPITable_GetRowCount(a1,a2,a3) CheckParameters3(IMAPITable_GetRowCount,a1,a2,a3) 333 334#define Validate_IMAPITable_SeekRow(a1,a2,a3,a4) ValidateParameters4(IMAPITable_SeekRow,a1,a2,a3,a4) 335#define UlValidate_IMAPITable_SeekRow(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_SeekRow,a1,a2,a3,a4) 336#define CheckParameters_IMAPITable_SeekRow(a1,a2,a3,a4) CheckParameters4(IMAPITable_SeekRow,a1,a2,a3,a4) 337 338#define Validate_IMAPITable_SeekRowApprox(a1,a2,a3) ValidateParameters3(IMAPITable_SeekRowApprox,a1,a2,a3) 339#define UlValidate_IMAPITable_SeekRowApprox(a1,a2,a3) UlValidateParameters3(IMAPITable_SeekRowApprox,a1,a2,a3) 340#define CheckParameters_IMAPITable_SeekRowApprox(a1,a2,a3) CheckParameters3(IMAPITable_SeekRowApprox,a1,a2,a3) 341 342#define Validate_IMAPITable_QueryPosition(a1,a2,a3,a4) ValidateParameters4(IMAPITable_QueryPosition,a1,a2,a3,a4) 343#define UlValidate_IMAPITable_QueryPosition(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_QueryPosition,a1,a2,a3,a4) 344#define CheckParameters_IMAPITable_QueryPosition(a1,a2,a3,a4) CheckParameters4(IMAPITable_QueryPosition,a1,a2,a3,a4) 345 346#define Validate_IMAPITable_FindRow(a1,a2,a3,a4) ValidateParameters4(IMAPITable_FindRow,a1,a2,a3,a4) 347#define UlValidate_IMAPITable_FindRow(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_FindRow,a1,a2,a3,a4) 348#define CheckParameters_IMAPITable_FindRow(a1,a2,a3,a4) CheckParameters4(IMAPITable_FindRow,a1,a2,a3,a4) 349 350#define Validate_IMAPITable_Restrict(a1,a2,a3) ValidateParameters3(IMAPITable_Restrict,a1,a2,a3) 351#define UlValidate_IMAPITable_Restrict(a1,a2,a3) UlValidateParameters3(IMAPITable_Restrict,a1,a2,a3) 352#define CheckParameters_IMAPITable_Restrict(a1,a2,a3) CheckParameters3(IMAPITable_Restrict,a1,a2,a3) 353 354#define Validate_IMAPITable_CreateBookmark(a1,a2) ValidateParameters2(IMAPITable_CreateBookmark,a1,a2) 355#define UlValidate_IMAPITable_CreateBookmark(a1,a2) UlValidateParameters2(IMAPITable_CreateBookmark,a1,a2) 356#define CheckParameters_IMAPITable_CreateBookmark(a1,a2) CheckParameters2(IMAPITable_CreateBookmark,a1,a2) 357 358#define Validate_IMAPITable_FreeBookmark(a1,a2) ValidateParameters2(IMAPITable_FreeBookmark,a1,a2) 359#define UlValidate_IMAPITable_FreeBookmark(a1,a2) UlValidateParameters2(IMAPITable_FreeBookmark,a1,a2) 360#define CheckParameters_IMAPITable_FreeBookmark(a1,a2) CheckParameters2(IMAPITable_FreeBookmark,a1,a2) 361 362#define Validate_IMAPITable_SortTable(a1,a2,a3) ValidateParameters3(IMAPITable_SortTable,a1,a2,a3) 363#define UlValidate_IMAPITable_SortTable(a1,a2,a3) UlValidateParameters3(IMAPITable_SortTable,a1,a2,a3) 364#define CheckParameters_IMAPITable_SortTable(a1,a2,a3) CheckParameters3(IMAPITable_SortTable,a1,a2,a3) 365 366#define Validate_IMAPITable_QuerySortOrder(a1,a2) ValidateParameters2(IMAPITable_QuerySortOrder,a1,a2) 367#define UlValidate_IMAPITable_QuerySortOrder(a1,a2) UlValidateParameters2(IMAPITable_QuerySortOrder,a1,a2) 368#define CheckParameters_IMAPITable_QuerySortOrder(a1,a2) CheckParameters2(IMAPITable_QuerySortOrder,a1,a2) 369 370#define Validate_IMAPITable_QueryRows(a1,a2,a3,a4) ValidateParameters4(IMAPITable_QueryRows,a1,a2,a3,a4) 371#define UlValidate_IMAPITable_QueryRows(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_QueryRows,a1,a2,a3,a4) 372#define CheckParameters_IMAPITable_QueryRows(a1,a2,a3,a4) CheckParameters4(IMAPITable_QueryRows,a1,a2,a3,a4) 373 374#define Validate_IMAPITable_Abort(a1) ValidateParameters1(IMAPITable_Abort,a1) 375#define UlValidate_IMAPITable_Abort(a1) UlValidateParameters1(IMAPITable_Abort,a1) 376#define CheckParameters_IMAPITable_Abort(a1) CheckParameters1(IMAPITable_Abort,a1) 377 378#define Validate_IMAPITable_ExpandRow(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMAPITable_ExpandRow,a1,a2,a3,a4,a5,a6,a7) 379#define UlValidate_IMAPITable_ExpandRow(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMAPITable_ExpandRow,a1,a2,a3,a4,a5,a6,a7) 380#define CheckParameters_IMAPITable_ExpandRow(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMAPITable_ExpandRow,a1,a2,a3,a4,a5,a6,a7) 381 382#define Validate_IMAPITable_CollapseRow(a1,a2,a3,a4,a5) ValidateParameters5(IMAPITable_CollapseRow,a1,a2,a3,a4,a5) 383#define UlValidate_IMAPITable_CollapseRow(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPITable_CollapseRow,a1,a2,a3,a4,a5) 384#define CheckParameters_IMAPITable_CollapseRow(a1,a2,a3,a4,a5) CheckParameters5(IMAPITable_CollapseRow,a1,a2,a3,a4,a5) 385 386#define Validate_IMAPITable_WaitForCompletion(a1,a2,a3,a4) ValidateParameters4(IMAPITable_WaitForCompletion,a1,a2,a3,a4) 387#define UlValidate_IMAPITable_WaitForCompletion(a1,a2,a3,a4) UlValidateParameters4(IMAPITable_WaitForCompletion,a1,a2,a3,a4) 388#define CheckParameters_IMAPITable_WaitForCompletion(a1,a2,a3,a4) CheckParameters4(IMAPITable_WaitForCompletion,a1,a2,a3,a4) 389 390#define Validate_IMAPITable_GetCollapseState(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMAPITable_GetCollapseState,a1,a2,a3,a4,a5,a6) 391#define UlValidate_IMAPITable_GetCollapseState(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMAPITable_GetCollapseState,a1,a2,a3,a4,a5,a6) 392#define CheckParameters_IMAPITable_GetCollapseState(a1,a2,a3,a4,a5,a6) CheckParameters6(IMAPITable_GetCollapseState,a1,a2,a3,a4,a5,a6) 393 394#define Validate_IMAPITable_SetCollapseState(a1,a2,a3,a4,a5) ValidateParameters5(IMAPITable_SetCollapseState,a1,a2,a3,a4,a5) 395#define UlValidate_IMAPITable_SetCollapseState(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPITable_SetCollapseState,a1,a2,a3,a4,a5) 396#define CheckParameters_IMAPITable_SetCollapseState(a1,a2,a3,a4,a5) CheckParameters5(IMAPITable_SetCollapseState,a1,a2,a3,a4,a5) 397 398#define Validate_IMAPIContainer_GetContentsTable(a1,a2,a3) ValidateParameters3(IMAPIContainer_GetContentsTable,a1,a2,a3) 399#define UlValidate_IMAPIContainer_GetContentsTable(a1,a2,a3) UlValidateParameters3(IMAPIContainer_GetContentsTable,a1,a2,a3) 400#define CheckParameters_IMAPIContainer_GetContentsTable(a1,a2,a3) CheckParameters3(IMAPIContainer_GetContentsTable,a1,a2,a3) 401 402#define Validate_IMAPIContainer_GetHierarchyTable(a1,a2,a3) ValidateParameters3(IMAPIContainer_GetHierarchyTable,a1,a2,a3) 403#define UlValidate_IMAPIContainer_GetHierarchyTable(a1,a2,a3) UlValidateParameters3(IMAPIContainer_GetHierarchyTable,a1,a2,a3) 404#define CheckParameters_IMAPIContainer_GetHierarchyTable(a1,a2,a3) CheckParameters3(IMAPIContainer_GetHierarchyTable,a1,a2,a3) 405 406#define Validate_IMAPIContainer_OpenEntry(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMAPIContainer_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 407#define UlValidate_IMAPIContainer_OpenEntry(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMAPIContainer_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 408#define CheckParameters_IMAPIContainer_OpenEntry(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMAPIContainer_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 409 410#define Validate_IMAPIContainer_SetSearchCriteria(a1,a2,a3,a4) ValidateParameters4(IMAPIContainer_SetSearchCriteria,a1,a2,a3,a4) 411#define UlValidate_IMAPIContainer_SetSearchCriteria(a1,a2,a3,a4) UlValidateParameters4(IMAPIContainer_SetSearchCriteria,a1,a2,a3,a4) 412#define CheckParameters_IMAPIContainer_SetSearchCriteria(a1,a2,a3,a4) CheckParameters4(IMAPIContainer_SetSearchCriteria,a1,a2,a3,a4) 413 414#define Validate_IMAPIContainer_GetSearchCriteria(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIContainer_GetSearchCriteria,a1,a2,a3,a4,a5) 415#define UlValidate_IMAPIContainer_GetSearchCriteria(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIContainer_GetSearchCriteria,a1,a2,a3,a4,a5) 416#define CheckParameters_IMAPIContainer_GetSearchCriteria(a1,a2,a3,a4,a5) CheckParameters5(IMAPIContainer_GetSearchCriteria,a1,a2,a3,a4,a5) 417 418#define Validate_IABContainer_CreateEntry(a1,a2,a3,a4,a5) ValidateParameters5(IABContainer_CreateEntry,a1,a2,a3,a4,a5) 419#define UlValidate_IABContainer_CreateEntry(a1,a2,a3,a4,a5) UlValidateParameters5(IABContainer_CreateEntry,a1,a2,a3,a4,a5) 420#define CheckParameters_IABContainer_CreateEntry(a1,a2,a3,a4,a5) CheckParameters5(IABContainer_CreateEntry,a1,a2,a3,a4,a5) 421 422#define Validate_IABContainer_CopyEntries(a1,a2,a3,a4,a5) ValidateParameters5(IABContainer_CopyEntries,a1,a2,a3,a4,a5) 423#define UlValidate_IABContainer_CopyEntries(a1,a2,a3,a4,a5) UlValidateParameters5(IABContainer_CopyEntries,a1,a2,a3,a4,a5) 424#define CheckParameters_IABContainer_CopyEntries(a1,a2,a3,a4,a5) CheckParameters5(IABContainer_CopyEntries,a1,a2,a3,a4,a5) 425 426#define Validate_IABContainer_DeleteEntries(a1,a2,a3) ValidateParameters3(IABContainer_DeleteEntries,a1,a2,a3) 427#define UlValidate_IABContainer_DeleteEntries(a1,a2,a3) UlValidateParameters3(IABContainer_DeleteEntries,a1,a2,a3) 428#define CheckParameters_IABContainer_DeleteEntries(a1,a2,a3) CheckParameters3(IABContainer_DeleteEntries,a1,a2,a3) 429 430#define Validate_IABContainer_ResolveNames(a1,a2,a3,a4,a5) ValidateParameters5(IABContainer_ResolveNames,a1,a2,a3,a4,a5) 431#define UlValidate_IABContainer_ResolveNames(a1,a2,a3,a4,a5) UlValidateParameters5(IABContainer_ResolveNames,a1,a2,a3,a4,a5) 432#define CheckParameters_IABContainer_ResolveNames(a1,a2,a3,a4,a5) CheckParameters5(IABContainer_ResolveNames,a1,a2,a3,a4,a5) 433 434#define Validate_IDistList_CreateEntry(a1,a2,a3,a4,a5) ValidateParameters5(IDistList_CreateEntry,a1,a2,a3,a4,a5) 435#define UlValidate_IDistList_CreateEntry(a1,a2,a3,a4,a5) UlValidateParameters5(IDistList_CreateEntry,a1,a2,a3,a4,a5) 436#define CheckParameters_IDistList_CreateEntry(a1,a2,a3,a4,a5) CheckParameters5(IDistList_CreateEntry,a1,a2,a3,a4,a5) 437 438#define Validate_IDistList_CopyEntries(a1,a2,a3,a4,a5) ValidateParameters5(IDistList_CopyEntries,a1,a2,a3,a4,a5) 439#define UlValidate_IDistList_CopyEntries(a1,a2,a3,a4,a5) UlValidateParameters5(IDistList_CopyEntries,a1,a2,a3,a4,a5) 440#define CheckParameters_IDistList_CopyEntries(a1,a2,a3,a4,a5) CheckParameters5(IDistList_CopyEntries,a1,a2,a3,a4,a5) 441 442#define Validate_IDistList_DeleteEntries(a1,a2,a3) ValidateParameters3(IDistList_DeleteEntries,a1,a2,a3) 443#define UlValidate_IDistList_DeleteEntries(a1,a2,a3) UlValidateParameters3(IDistList_DeleteEntries,a1,a2,a3) 444#define CheckParameters_IDistList_DeleteEntries(a1,a2,a3) CheckParameters3(IDistList_DeleteEntries,a1,a2,a3) 445 446#define Validate_IDistList_ResolveNames(a1,a2,a3,a4,a5) ValidateParameters5(IDistList_ResolveNames,a1,a2,a3,a4,a5) 447#define UlValidate_IDistList_ResolveNames(a1,a2,a3,a4,a5) UlValidateParameters5(IDistList_ResolveNames,a1,a2,a3,a4,a5) 448#define CheckParameters_IDistList_ResolveNames(a1,a2,a3,a4,a5) CheckParameters5(IDistList_ResolveNames,a1,a2,a3,a4,a5) 449 450#define Validate_IMAPIFolder_CreateMessage(a1,a2,a3,a4) ValidateParameters4(IMAPIFolder_CreateMessage,a1,a2,a3,a4) 451#define UlValidate_IMAPIFolder_CreateMessage(a1,a2,a3,a4) UlValidateParameters4(IMAPIFolder_CreateMessage,a1,a2,a3,a4) 452#define CheckParameters_IMAPIFolder_CreateMessage(a1,a2,a3,a4) CheckParameters4(IMAPIFolder_CreateMessage,a1,a2,a3,a4) 453 454#define Validate_IMAPIFolder_CopyMessages(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMAPIFolder_CopyMessages,a1,a2,a3,a4,a5,a6,a7) 455#define UlValidate_IMAPIFolder_CopyMessages(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMAPIFolder_CopyMessages,a1,a2,a3,a4,a5,a6,a7) 456#define CheckParameters_IMAPIFolder_CopyMessages(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMAPIFolder_CopyMessages,a1,a2,a3,a4,a5,a6,a7) 457 458#define Validate_IMAPIFolder_DeleteMessages(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIFolder_DeleteMessages,a1,a2,a3,a4,a5) 459#define UlValidate_IMAPIFolder_DeleteMessages(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIFolder_DeleteMessages,a1,a2,a3,a4,a5) 460#define CheckParameters_IMAPIFolder_DeleteMessages(a1,a2,a3,a4,a5) CheckParameters5(IMAPIFolder_DeleteMessages,a1,a2,a3,a4,a5) 461 462#define Validate_IMAPIFolder_CreateFolder(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMAPIFolder_CreateFolder,a1,a2,a3,a4,a5,a6,a7) 463#define UlValidate_IMAPIFolder_CreateFolder(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMAPIFolder_CreateFolder,a1,a2,a3,a4,a5,a6,a7) 464#define CheckParameters_IMAPIFolder_CreateFolder(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMAPIFolder_CreateFolder,a1,a2,a3,a4,a5,a6,a7) 465 466#define Validate_IMAPIFolder_CopyFolder(a1,a2,a3,a4,a5,a6,a7,a8,a9) ValidateParameters9(IMAPIFolder_CopyFolder,a1,a2,a3,a4,a5,a6,a7,a8,a9) 467#define UlValidate_IMAPIFolder_CopyFolder(a1,a2,a3,a4,a5,a6,a7,a8,a9) UlValidateParameters9(IMAPIFolder_CopyFolder,a1,a2,a3,a4,a5,a6,a7,a8,a9) 468#define CheckParameters_IMAPIFolder_CopyFolder(a1,a2,a3,a4,a5,a6,a7,a8,a9) CheckParameters9(IMAPIFolder_CopyFolder,a1,a2,a3,a4,a5,a6,a7,a8,a9) 469 470#define Validate_IMAPIFolder_DeleteFolder(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMAPIFolder_DeleteFolder,a1,a2,a3,a4,a5,a6) 471#define UlValidate_IMAPIFolder_DeleteFolder(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMAPIFolder_DeleteFolder,a1,a2,a3,a4,a5,a6) 472#define CheckParameters_IMAPIFolder_DeleteFolder(a1,a2,a3,a4,a5,a6) CheckParameters6(IMAPIFolder_DeleteFolder,a1,a2,a3,a4,a5,a6) 473 474#define Validate_IMAPIFolder_SetReadFlags(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIFolder_SetReadFlags,a1,a2,a3,a4,a5) 475#define UlValidate_IMAPIFolder_SetReadFlags(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIFolder_SetReadFlags,a1,a2,a3,a4,a5) 476#define CheckParameters_IMAPIFolder_SetReadFlags(a1,a2,a3,a4,a5) CheckParameters5(IMAPIFolder_SetReadFlags,a1,a2,a3,a4,a5) 477 478#define Validate_IMAPIFolder_GetMessageStatus(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIFolder_GetMessageStatus,a1,a2,a3,a4,a5) 479#define UlValidate_IMAPIFolder_GetMessageStatus(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIFolder_GetMessageStatus,a1,a2,a3,a4,a5) 480#define CheckParameters_IMAPIFolder_GetMessageStatus(a1,a2,a3,a4,a5) CheckParameters5(IMAPIFolder_GetMessageStatus,a1,a2,a3,a4,a5) 481 482#define Validate_IMAPIFolder_SetMessageStatus(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMAPIFolder_SetMessageStatus,a1,a2,a3,a4,a5,a6) 483#define UlValidate_IMAPIFolder_SetMessageStatus(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMAPIFolder_SetMessageStatus,a1,a2,a3,a4,a5,a6) 484#define CheckParameters_IMAPIFolder_SetMessageStatus(a1,a2,a3,a4,a5,a6) CheckParameters6(IMAPIFolder_SetMessageStatus,a1,a2,a3,a4,a5,a6) 485 486#define Validate_IMAPIFolder_SaveContentsSort(a1,a2,a3) ValidateParameters3(IMAPIFolder_SaveContentsSort,a1,a2,a3) 487#define UlValidate_IMAPIFolder_SaveContentsSort(a1,a2,a3) UlValidateParameters3(IMAPIFolder_SaveContentsSort,a1,a2,a3) 488#define CheckParameters_IMAPIFolder_SaveContentsSort(a1,a2,a3) CheckParameters3(IMAPIFolder_SaveContentsSort,a1,a2,a3) 489 490#define Validate_IMAPIFolder_EmptyFolder(a1,a2,a3,a4) ValidateParameters4(IMAPIFolder_EmptyFolder,a1,a2,a3,a4) 491#define UlValidate_IMAPIFolder_EmptyFolder(a1,a2,a3,a4) UlValidateParameters4(IMAPIFolder_EmptyFolder,a1,a2,a3,a4) 492#define CheckParameters_IMAPIFolder_EmptyFolder(a1,a2,a3,a4) CheckParameters4(IMAPIFolder_EmptyFolder,a1,a2,a3,a4) 493 494#define Validate_IMsgStore_Advise(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMsgStore_Advise,a1,a2,a3,a4,a5,a6) 495#define UlValidate_IMsgStore_Advise(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMsgStore_Advise,a1,a2,a3,a4,a5,a6) 496#define CheckParameters_IMsgStore_Advise(a1,a2,a3,a4,a5,a6) CheckParameters6(IMsgStore_Advise,a1,a2,a3,a4,a5,a6) 497 498#define Validate_IMsgStore_Unadvise(a1,a2) ValidateParameters2(IMsgStore_Unadvise,a1,a2) 499#define UlValidate_IMsgStore_Unadvise(a1,a2) UlValidateParameters2(IMsgStore_Unadvise,a1,a2) 500#define CheckParameters_IMsgStore_Unadvise(a1,a2) CheckParameters2(IMsgStore_Unadvise,a1,a2) 501 502#define Validate_IMsgStore_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMsgStore_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 503#define UlValidate_IMsgStore_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMsgStore_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 504#define CheckParameters_IMsgStore_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMsgStore_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 505 506#define Validate_IMsgStore_OpenEntry(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMsgStore_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 507#define UlValidate_IMsgStore_OpenEntry(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMsgStore_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 508#define CheckParameters_IMsgStore_OpenEntry(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMsgStore_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 509 510#define Validate_IMsgStore_SetReceiveFolder(a1,a2,a3,a4,a5) ValidateParameters5(IMsgStore_SetReceiveFolder,a1,a2,a3,a4,a5) 511#define UlValidate_IMsgStore_SetReceiveFolder(a1,a2,a3,a4,a5) UlValidateParameters5(IMsgStore_SetReceiveFolder,a1,a2,a3,a4,a5) 512#define CheckParameters_IMsgStore_SetReceiveFolder(a1,a2,a3,a4,a5) CheckParameters5(IMsgStore_SetReceiveFolder,a1,a2,a3,a4,a5) 513 514#define Validate_IMsgStore_GetReceiveFolder(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMsgStore_GetReceiveFolder,a1,a2,a3,a4,a5,a6) 515#define UlValidate_IMsgStore_GetReceiveFolder(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMsgStore_GetReceiveFolder,a1,a2,a3,a4,a5,a6) 516#define CheckParameters_IMsgStore_GetReceiveFolder(a1,a2,a3,a4,a5,a6) CheckParameters6(IMsgStore_GetReceiveFolder,a1,a2,a3,a4,a5,a6) 517 518#define Validate_IMsgStore_GetReceiveFolderTable(a1,a2,a3) ValidateParameters3(IMsgStore_GetReceiveFolderTable,a1,a2,a3) 519#define UlValidate_IMsgStore_GetReceiveFolderTable(a1,a2,a3) UlValidateParameters3(IMsgStore_GetReceiveFolderTable,a1,a2,a3) 520#define CheckParameters_IMsgStore_GetReceiveFolderTable(a1,a2,a3) CheckParameters3(IMsgStore_GetReceiveFolderTable,a1,a2,a3) 521 522#define Validate_IMsgStore_StoreLogoff(a1,a2) ValidateParameters2(IMsgStore_StoreLogoff,a1,a2) 523#define UlValidate_IMsgStore_StoreLogoff(a1,a2) UlValidateParameters2(IMsgStore_StoreLogoff,a1,a2) 524#define CheckParameters_IMsgStore_StoreLogoff(a1,a2) CheckParameters2(IMsgStore_StoreLogoff,a1,a2) 525 526#define Validate_IMsgStore_AbortSubmit(a1,a2,a3,a4) ValidateParameters4(IMsgStore_AbortSubmit,a1,a2,a3,a4) 527#define UlValidate_IMsgStore_AbortSubmit(a1,a2,a3,a4) UlValidateParameters4(IMsgStore_AbortSubmit,a1,a2,a3,a4) 528#define CheckParameters_IMsgStore_AbortSubmit(a1,a2,a3,a4) CheckParameters4(IMsgStore_AbortSubmit,a1,a2,a3,a4) 529 530#define Validate_IMsgStore_GetOutgoingQueue(a1,a2,a3) ValidateParameters3(IMsgStore_GetOutgoingQueue,a1,a2,a3) 531#define UlValidate_IMsgStore_GetOutgoingQueue(a1,a2,a3) UlValidateParameters3(IMsgStore_GetOutgoingQueue,a1,a2,a3) 532#define CheckParameters_IMsgStore_GetOutgoingQueue(a1,a2,a3) CheckParameters3(IMsgStore_GetOutgoingQueue,a1,a2,a3) 533 534#define Validate_IMsgStore_SetLockState(a1,a2,a3) ValidateParameters3(IMsgStore_SetLockState,a1,a2,a3) 535#define UlValidate_IMsgStore_SetLockState(a1,a2,a3) UlValidateParameters3(IMsgStore_SetLockState,a1,a2,a3) 536#define CheckParameters_IMsgStore_SetLockState(a1,a2,a3) CheckParameters3(IMsgStore_SetLockState,a1,a2,a3) 537 538#define Validate_IMsgStore_FinishedMsg(a1,a2,a3,a4) ValidateParameters4(IMsgStore_FinishedMsg,a1,a2,a3,a4) 539#define UlValidate_IMsgStore_FinishedMsg(a1,a2,a3,a4) UlValidateParameters4(IMsgStore_FinishedMsg,a1,a2,a3,a4) 540#define CheckParameters_IMsgStore_FinishedMsg(a1,a2,a3,a4) CheckParameters4(IMsgStore_FinishedMsg,a1,a2,a3,a4) 541 542#define Validate_IMsgStore_NotifyNewMail(a1,a2) ValidateParameters2(IMsgStore_NotifyNewMail,a1,a2) 543#define UlValidate_IMsgStore_NotifyNewMail(a1,a2) UlValidateParameters2(IMsgStore_NotifyNewMail,a1,a2) 544#define CheckParameters_IMsgStore_NotifyNewMail(a1,a2) CheckParameters2(IMsgStore_NotifyNewMail,a1,a2) 545 546#define Validate_IMessage_GetAttachmentTable(a1,a2,a3) ValidateParameters3(IMessage_GetAttachmentTable,a1,a2,a3) 547#define UlValidate_IMessage_GetAttachmentTable(a1,a2,a3) UlValidateParameters3(IMessage_GetAttachmentTable,a1,a2,a3) 548#define CheckParameters_IMessage_GetAttachmentTable(a1,a2,a3) CheckParameters3(IMessage_GetAttachmentTable,a1,a2,a3) 549 550#define Validate_IMessage_OpenAttach(a1,a2,a3,a4,a5) ValidateParameters5(IMessage_OpenAttach,a1,a2,a3,a4,a5) 551#define UlValidate_IMessage_OpenAttach(a1,a2,a3,a4,a5) UlValidateParameters5(IMessage_OpenAttach,a1,a2,a3,a4,a5) 552#define CheckParameters_IMessage_OpenAttach(a1,a2,a3,a4,a5) CheckParameters5(IMessage_OpenAttach,a1,a2,a3,a4,a5) 553 554#define Validate_IMessage_CreateAttach(a1,a2,a3,a4,a5) ValidateParameters5(IMessage_CreateAttach,a1,a2,a3,a4,a5) 555#define UlValidate_IMessage_CreateAttach(a1,a2,a3,a4,a5) UlValidateParameters5(IMessage_CreateAttach,a1,a2,a3,a4,a5) 556#define CheckParameters_IMessage_CreateAttach(a1,a2,a3,a4,a5) CheckParameters5(IMessage_CreateAttach,a1,a2,a3,a4,a5) 557 558#define Validate_IMessage_DeleteAttach(a1,a2,a3,a4,a5) ValidateParameters5(IMessage_DeleteAttach,a1,a2,a3,a4,a5) 559#define UlValidate_IMessage_DeleteAttach(a1,a2,a3,a4,a5) UlValidateParameters5(IMessage_DeleteAttach,a1,a2,a3,a4,a5) 560#define CheckParameters_IMessage_DeleteAttach(a1,a2,a3,a4,a5) CheckParameters5(IMessage_DeleteAttach,a1,a2,a3,a4,a5) 561 562#define Validate_IMessage_GetRecipientTable(a1,a2,a3) ValidateParameters3(IMessage_GetRecipientTable,a1,a2,a3) 563#define UlValidate_IMessage_GetRecipientTable(a1,a2,a3) UlValidateParameters3(IMessage_GetRecipientTable,a1,a2,a3) 564#define CheckParameters_IMessage_GetRecipientTable(a1,a2,a3) CheckParameters3(IMessage_GetRecipientTable,a1,a2,a3) 565 566#define Validate_IMessage_ModifyRecipients(a1,a2,a3) ValidateParameters3(IMessage_ModifyRecipients,a1,a2,a3) 567#define UlValidate_IMessage_ModifyRecipients(a1,a2,a3) UlValidateParameters3(IMessage_ModifyRecipients,a1,a2,a3) 568#define CheckParameters_IMessage_ModifyRecipients(a1,a2,a3) CheckParameters3(IMessage_ModifyRecipients,a1,a2,a3) 569 570#define Validate_IMessage_SubmitMessage(a1,a2) ValidateParameters2(IMessage_SubmitMessage,a1,a2) 571#define UlValidate_IMessage_SubmitMessage(a1,a2) UlValidateParameters2(IMessage_SubmitMessage,a1,a2) 572#define CheckParameters_IMessage_SubmitMessage(a1,a2) CheckParameters2(IMessage_SubmitMessage,a1,a2) 573 574#define Validate_IMessage_SetReadFlag(a1,a2) ValidateParameters2(IMessage_SetReadFlag,a1,a2) 575#define UlValidate_IMessage_SetReadFlag(a1,a2) UlValidateParameters2(IMessage_SetReadFlag,a1,a2) 576#define CheckParameters_IMessage_SetReadFlag(a1,a2) CheckParameters2(IMessage_SetReadFlag,a1,a2) 577 578#define Validate_IABProvider_Shutdown(a1,a2) ValidateParameters2(IABProvider_Shutdown,a1,a2) 579#define UlValidate_IABProvider_Shutdown(a1,a2) UlValidateParameters2(IABProvider_Shutdown,a1,a2) 580#define CheckParameters_IABProvider_Shutdown(a1,a2) CheckParameters2(IABProvider_Shutdown,a1,a2) 581 582#define Validate_IABProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9) ValidateParameters9(IABProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9) 583#define UlValidate_IABProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9) UlValidateParameters9(IABProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9) 584#define CheckParameters_IABProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9) CheckParameters9(IABProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9) 585 586#define Validate_IABLogon_GetLastError(a1,a2,a3,a4) ValidateParameters4(IABLogon_GetLastError,a1,a2,a3,a4) 587#define UlValidate_IABLogon_GetLastError(a1,a2,a3,a4) UlValidateParameters4(IABLogon_GetLastError,a1,a2,a3,a4) 588#define CheckParameters_IABLogon_GetLastError(a1,a2,a3,a4) CheckParameters4(IABLogon_GetLastError,a1,a2,a3,a4) 589 590#define Validate_IABLogon_Logoff(a1,a2) ValidateParameters2(IABLogon_Logoff,a1,a2) 591#define UlValidate_IABLogon_Logoff(a1,a2) UlValidateParameters2(IABLogon_Logoff,a1,a2) 592#define CheckParameters_IABLogon_Logoff(a1,a2) CheckParameters2(IABLogon_Logoff,a1,a2) 593 594#define Validate_IABLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IABLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 595#define UlValidate_IABLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IABLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 596#define CheckParameters_IABLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IABLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 597 598#define Validate_IABLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IABLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 599#define UlValidate_IABLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IABLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 600#define CheckParameters_IABLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IABLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 601 602#define Validate_IABLogon_Advise(a1,a2,a3,a4,a5,a6) ValidateParameters6(IABLogon_Advise,a1,a2,a3,a4,a5,a6) 603#define UlValidate_IABLogon_Advise(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IABLogon_Advise,a1,a2,a3,a4,a5,a6) 604#define CheckParameters_IABLogon_Advise(a1,a2,a3,a4,a5,a6) CheckParameters6(IABLogon_Advise,a1,a2,a3,a4,a5,a6) 605 606#define Validate_IABLogon_Unadvise(a1,a2) ValidateParameters2(IABLogon_Unadvise,a1,a2) 607#define UlValidate_IABLogon_Unadvise(a1,a2) UlValidateParameters2(IABLogon_Unadvise,a1,a2) 608#define CheckParameters_IABLogon_Unadvise(a1,a2) CheckParameters2(IABLogon_Unadvise,a1,a2) 609 610#define Validate_IABLogon_OpenStatusEntry(a1,a2,a3,a4,a5) ValidateParameters5(IABLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 611#define UlValidate_IABLogon_OpenStatusEntry(a1,a2,a3,a4,a5) UlValidateParameters5(IABLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 612#define CheckParameters_IABLogon_OpenStatusEntry(a1,a2,a3,a4,a5) CheckParameters5(IABLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 613 614#define Validate_IABLogon_OpenTemplateID(a1,a2,a3,a4,a5,a6,a7,a8) ValidateParameters8(IABLogon_OpenTemplateID,a1,a2,a3,a4,a5,a6,a7,a8) 615#define UlValidate_IABLogon_OpenTemplateID(a1,a2,a3,a4,a5,a6,a7,a8) UlValidateParameters8(IABLogon_OpenTemplateID,a1,a2,a3,a4,a5,a6,a7,a8) 616#define CheckParameters_IABLogon_OpenTemplateID(a1,a2,a3,a4,a5,a6,a7,a8) CheckParameters8(IABLogon_OpenTemplateID,a1,a2,a3,a4,a5,a6,a7,a8) 617 618#define Validate_IABLogon_GetOneOffTable(a1,a2,a3) ValidateParameters3(IABLogon_GetOneOffTable,a1,a2,a3) 619#define UlValidate_IABLogon_GetOneOffTable(a1,a2,a3) UlValidateParameters3(IABLogon_GetOneOffTable,a1,a2,a3) 620#define CheckParameters_IABLogon_GetOneOffTable(a1,a2,a3) CheckParameters3(IABLogon_GetOneOffTable,a1,a2,a3) 621 622#define Validate_IABLogon_PrepareRecips(a1,a2,a3,a4) ValidateParameters4(IABLogon_PrepareRecips,a1,a2,a3,a4) 623#define UlValidate_IABLogon_PrepareRecips(a1,a2,a3,a4) UlValidateParameters4(IABLogon_PrepareRecips,a1,a2,a3,a4) 624#define CheckParameters_IABLogon_PrepareRecips(a1,a2,a3,a4) CheckParameters4(IABLogon_PrepareRecips,a1,a2,a3,a4) 625 626#define Validate_IXPProvider_Shutdown(a1,a2) ValidateParameters2(IXPProvider_Shutdown,a1,a2) 627#define UlValidate_IXPProvider_Shutdown(a1,a2) UlValidateParameters2(IXPProvider_Shutdown,a1,a2) 628#define CheckParameters_IXPProvider_Shutdown(a1,a2) CheckParameters2(IXPProvider_Shutdown,a1,a2) 629 630#define Validate_IXPProvider_TransportLogon(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IXPProvider_TransportLogon,a1,a2,a3,a4,a5,a6,a7) 631#define UlValidate_IXPProvider_TransportLogon(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IXPProvider_TransportLogon,a1,a2,a3,a4,a5,a6,a7) 632#define CheckParameters_IXPProvider_TransportLogon(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IXPProvider_TransportLogon,a1,a2,a3,a4,a5,a6,a7) 633 634#define Validate_IXPLogon_AddressTypes(a1,a2,a3,a4,a5,a6) ValidateParameters6(IXPLogon_AddressTypes,a1,a2,a3,a4,a5,a6) 635#define UlValidate_IXPLogon_AddressTypes(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IXPLogon_AddressTypes,a1,a2,a3,a4,a5,a6) 636#define CheckParameters_IXPLogon_AddressTypes(a1,a2,a3,a4,a5,a6) CheckParameters6(IXPLogon_AddressTypes,a1,a2,a3,a4,a5,a6) 637 638#define Validate_IXPLogon_RegisterOptions(a1,a2,a3,a4) ValidateParameters4(IXPLogon_RegisterOptions,a1,a2,a3,a4) 639#define UlValidate_IXPLogon_RegisterOptions(a1,a2,a3,a4) UlValidateParameters4(IXPLogon_RegisterOptions,a1,a2,a3,a4) 640#define CheckParameters_IXPLogon_RegisterOptions(a1,a2,a3,a4) CheckParameters4(IXPLogon_RegisterOptions,a1,a2,a3,a4) 641 642#define Validate_IXPLogon_TransportNotify(a1,a2,a3) ValidateParameters3(IXPLogon_TransportNotify,a1,a2,a3) 643#define UlValidate_IXPLogon_TransportNotify(a1,a2,a3) UlValidateParameters3(IXPLogon_TransportNotify,a1,a2,a3) 644#define CheckParameters_IXPLogon_TransportNotify(a1,a2,a3) CheckParameters3(IXPLogon_TransportNotify,a1,a2,a3) 645 646#define Validate_IXPLogon_Idle(a1,a2) ValidateParameters2(IXPLogon_Idle,a1,a2) 647#define UlValidate_IXPLogon_Idle(a1,a2) UlValidateParameters2(IXPLogon_Idle,a1,a2) 648#define CheckParameters_IXPLogon_Idle(a1,a2) CheckParameters2(IXPLogon_Idle,a1,a2) 649 650#define Validate_IXPLogon_TransportLogoff(a1,a2) ValidateParameters2(IXPLogon_TransportLogoff,a1,a2) 651#define UlValidate_IXPLogon_TransportLogoff(a1,a2) UlValidateParameters2(IXPLogon_TransportLogoff,a1,a2) 652#define CheckParameters_IXPLogon_TransportLogoff(a1,a2) CheckParameters2(IXPLogon_TransportLogoff,a1,a2) 653 654#define Validate_IXPLogon_SubmitMessage(a1,a2,a3,a4,a5) ValidateParameters5(IXPLogon_SubmitMessage,a1,a2,a3,a4,a5) 655#define UlValidate_IXPLogon_SubmitMessage(a1,a2,a3,a4,a5) UlValidateParameters5(IXPLogon_SubmitMessage,a1,a2,a3,a4,a5) 656#define CheckParameters_IXPLogon_SubmitMessage(a1,a2,a3,a4,a5) CheckParameters5(IXPLogon_SubmitMessage,a1,a2,a3,a4,a5) 657 658#define Validate_IXPLogon_EndMessage(a1,a2,a3) ValidateParameters3(IXPLogon_EndMessage,a1,a2,a3) 659#define UlValidate_IXPLogon_EndMessage(a1,a2,a3) UlValidateParameters3(IXPLogon_EndMessage,a1,a2,a3) 660#define CheckParameters_IXPLogon_EndMessage(a1,a2,a3) CheckParameters3(IXPLogon_EndMessage,a1,a2,a3) 661 662#define Validate_IXPLogon_Poll(a1,a2) ValidateParameters2(IXPLogon_Poll,a1,a2) 663#define UlValidate_IXPLogon_Poll(a1,a2) UlValidateParameters2(IXPLogon_Poll,a1,a2) 664#define CheckParameters_IXPLogon_Poll(a1,a2) CheckParameters2(IXPLogon_Poll,a1,a2) 665 666#define Validate_IXPLogon_StartMessage(a1,a2,a3,a4) ValidateParameters4(IXPLogon_StartMessage,a1,a2,a3,a4) 667#define UlValidate_IXPLogon_StartMessage(a1,a2,a3,a4) UlValidateParameters4(IXPLogon_StartMessage,a1,a2,a3,a4) 668#define CheckParameters_IXPLogon_StartMessage(a1,a2,a3,a4) CheckParameters4(IXPLogon_StartMessage,a1,a2,a3,a4) 669 670#define Validate_IXPLogon_OpenStatusEntry(a1,a2,a3,a4,a5) ValidateParameters5(IXPLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 671#define UlValidate_IXPLogon_OpenStatusEntry(a1,a2,a3,a4,a5) UlValidateParameters5(IXPLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 672#define CheckParameters_IXPLogon_OpenStatusEntry(a1,a2,a3,a4,a5) CheckParameters5(IXPLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 673 674#define Validate_IXPLogon_ValidateState(a1,a2,a3) ValidateParameters3(IXPLogon_ValidateState,a1,a2,a3) 675#define UlValidate_IXPLogon_ValidateState(a1,a2,a3) UlValidateParameters3(IXPLogon_ValidateState,a1,a2,a3) 676#define CheckParameters_IXPLogon_ValidateState(a1,a2,a3) CheckParameters3(IXPLogon_ValidateState,a1,a2,a3) 677 678#define Validate_IXPLogon_FlushQueues(a1,a2,a3,a4,a5) ValidateParameters5(IXPLogon_FlushQueues,a1,a2,a3,a4,a5) 679#define UlValidate_IXPLogon_FlushQueues(a1,a2,a3,a4,a5) UlValidateParameters5(IXPLogon_FlushQueues,a1,a2,a3,a4,a5) 680#define CheckParameters_IXPLogon_FlushQueues(a1,a2,a3,a4,a5) CheckParameters5(IXPLogon_FlushQueues,a1,a2,a3,a4,a5) 681 682#define Validate_IMSProvider_Shutdown(a1,a2) ValidateParameters2(IMSProvider_Shutdown,a1,a2) 683#define UlValidate_IMSProvider_Shutdown(a1,a2) UlValidateParameters2(IMSProvider_Shutdown,a1,a2) 684#define CheckParameters_IMSProvider_Shutdown(a1,a2) CheckParameters2(IMSProvider_Shutdown,a1,a2) 685 686#define Validate_IMSProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) ValidateParameters13(IMSProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 687#define UlValidate_IMSProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) UlValidateParameters13(IMSProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 688#define CheckParameters_IMSProvider_Logon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) CheckParameters13(IMSProvider_Logon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 689 690#define Validate_IMSProvider_SpoolerLogon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) ValidateParameters13(IMSProvider_SpoolerLogon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 691#define UlValidate_IMSProvider_SpoolerLogon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) UlValidateParameters13(IMSProvider_SpoolerLogon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 692#define CheckParameters_IMSProvider_SpoolerLogon(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) CheckParameters13(IMSProvider_SpoolerLogon,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13) 693 694#define Validate_IMSProvider_CompareStoreIDs(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMSProvider_CompareStoreIDs,a1,a2,a3,a4,a5,a6,a7) 695#define UlValidate_IMSProvider_CompareStoreIDs(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMSProvider_CompareStoreIDs,a1,a2,a3,a4,a5,a6,a7) 696#define CheckParameters_IMSProvider_CompareStoreIDs(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMSProvider_CompareStoreIDs,a1,a2,a3,a4,a5,a6,a7) 697 698#define Validate_IMSLogon_GetLastError(a1,a2,a3,a4) ValidateParameters4(IMSLogon_GetLastError,a1,a2,a3,a4) 699#define UlValidate_IMSLogon_GetLastError(a1,a2,a3,a4) UlValidateParameters4(IMSLogon_GetLastError,a1,a2,a3,a4) 700#define CheckParameters_IMSLogon_GetLastError(a1,a2,a3,a4) CheckParameters4(IMSLogon_GetLastError,a1,a2,a3,a4) 701 702#define Validate_IMSLogon_Logoff(a1,a2) ValidateParameters2(IMSLogon_Logoff,a1,a2) 703#define UlValidate_IMSLogon_Logoff(a1,a2) UlValidateParameters2(IMSLogon_Logoff,a1,a2) 704#define CheckParameters_IMSLogon_Logoff(a1,a2) CheckParameters2(IMSLogon_Logoff,a1,a2) 705 706#define Validate_IMSLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMSLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 707#define UlValidate_IMSLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMSLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 708#define CheckParameters_IMSLogon_OpenEntry(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMSLogon_OpenEntry,a1,a2,a3,a4,a5,a6,a7) 709 710#define Validate_IMSLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) ValidateParameters7(IMSLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 711#define UlValidate_IMSLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) UlValidateParameters7(IMSLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 712#define CheckParameters_IMSLogon_CompareEntryIDs(a1,a2,a3,a4,a5,a6,a7) CheckParameters7(IMSLogon_CompareEntryIDs,a1,a2,a3,a4,a5,a6,a7) 713 714#define Validate_IMSLogon_Advise(a1,a2,a3,a4,a5,a6) ValidateParameters6(IMSLogon_Advise,a1,a2,a3,a4,a5,a6) 715#define UlValidate_IMSLogon_Advise(a1,a2,a3,a4,a5,a6) UlValidateParameters6(IMSLogon_Advise,a1,a2,a3,a4,a5,a6) 716#define CheckParameters_IMSLogon_Advise(a1,a2,a3,a4,a5,a6) CheckParameters6(IMSLogon_Advise,a1,a2,a3,a4,a5,a6) 717 718#define Validate_IMSLogon_Unadvise(a1,a2) ValidateParameters2(IMSLogon_Unadvise,a1,a2) 719#define UlValidate_IMSLogon_Unadvise(a1,a2) UlValidateParameters2(IMSLogon_Unadvise,a1,a2) 720#define CheckParameters_IMSLogon_Unadvise(a1,a2) CheckParameters2(IMSLogon_Unadvise,a1,a2) 721 722#define Validate_IMSLogon_OpenStatusEntry(a1,a2,a3,a4,a5) ValidateParameters5(IMSLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 723#define UlValidate_IMSLogon_OpenStatusEntry(a1,a2,a3,a4,a5) UlValidateParameters5(IMSLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 724#define CheckParameters_IMSLogon_OpenStatusEntry(a1,a2,a3,a4,a5) CheckParameters5(IMSLogon_OpenStatusEntry,a1,a2,a3,a4,a5) 725 726#define Validate_IMAPIControl_GetLastError(a1,a2,a3,a4) ValidateParameters4(IMAPIControl_GetLastError,a1,a2,a3,a4) 727#define UlValidate_IMAPIControl_GetLastError(a1,a2,a3,a4) UlValidateParameters4(IMAPIControl_GetLastError,a1,a2,a3,a4) 728#define CheckParameters_IMAPIControl_GetLastError(a1,a2,a3,a4) CheckParameters4(IMAPIControl_GetLastError,a1,a2,a3,a4) 729 730#define Validate_IMAPIControl_Activate(a1,a2,a3) ValidateParameters3(IMAPIControl_Activate,a1,a2,a3) 731#define UlValidate_IMAPIControl_Activate(a1,a2,a3) UlValidateParameters3(IMAPIControl_Activate,a1,a2,a3) 732#define CheckParameters_IMAPIControl_Activate(a1,a2,a3) CheckParameters3(IMAPIControl_Activate,a1,a2,a3) 733 734#define Validate_IMAPIControl_GetState(a1,a2,a3) ValidateParameters3(IMAPIControl_GetState,a1,a2,a3) 735#define UlValidate_IMAPIControl_GetState(a1,a2,a3) UlValidateParameters3(IMAPIControl_GetState,a1,a2,a3) 736#define CheckParameters_IMAPIControl_GetState(a1,a2,a3) CheckParameters3(IMAPIControl_GetState,a1,a2,a3) 737 738#define Validate_IMAPIStatus_ValidateState(a1,a2,a3) ValidateParameters3(IMAPIStatus_ValidateState,a1,a2,a3) 739#define UlValidate_IMAPIStatus_ValidateState(a1,a2,a3) UlValidateParameters3(IMAPIStatus_ValidateState,a1,a2,a3) 740#define CheckParameters_IMAPIStatus_ValidateState(a1,a2,a3) CheckParameters3(IMAPIStatus_ValidateState,a1,a2,a3) 741 742#define Validate_IMAPIStatus_SettingsDialog(a1,a2,a3) ValidateParameters3(IMAPIStatus_SettingsDialog,a1,a2,a3) 743#define UlValidate_IMAPIStatus_SettingsDialog(a1,a2,a3) UlValidateParameters3(IMAPIStatus_SettingsDialog,a1,a2,a3) 744#define CheckParameters_IMAPIStatus_SettingsDialog(a1,a2,a3) CheckParameters3(IMAPIStatus_SettingsDialog,a1,a2,a3) 745 746#define Validate_IMAPIStatus_ChangePassword(a1,a2,a3,a4) ValidateParameters4(IMAPIStatus_ChangePassword,a1,a2,a3,a4) 747#define UlValidate_IMAPIStatus_ChangePassword(a1,a2,a3,a4) UlValidateParameters4(IMAPIStatus_ChangePassword,a1,a2,a3,a4) 748#define CheckParameters_IMAPIStatus_ChangePassword(a1,a2,a3,a4) CheckParameters4(IMAPIStatus_ChangePassword,a1,a2,a3,a4) 749 750#define Validate_IMAPIStatus_FlushQueues(a1,a2,a3,a4,a5) ValidateParameters5(IMAPIStatus_FlushQueues,a1,a2,a3,a4,a5) 751#define UlValidate_IMAPIStatus_FlushQueues(a1,a2,a3,a4,a5) UlValidateParameters5(IMAPIStatus_FlushQueues,a1,a2,a3,a4,a5) 752#define CheckParameters_IMAPIStatus_FlushQueues(a1,a2,a3,a4,a5) CheckParameters5(IMAPIStatus_FlushQueues,a1,a2,a3,a4,a5) 753 754#define Validate_IStream_Read(a1,a2,a3,a4) ValidateParameters4(IStream_Read,a1,a2,a3,a4) 755#define UlValidate_IStream_Read(a1,a2,a3,a4) UlValidateParameters4(IStream_Read,a1,a2,a3,a4) 756#define CheckParameters_IStream_Read(a1,a2,a3,a4) CheckParameters4(IStream_Read,a1,a2,a3,a4) 757 758#define Validate_IStream_Write(a1,a2,a3,a4) ValidateParameters4(IStream_Write,a1,a2,a3,a4) 759#define UlValidate_IStream_Write(a1,a2,a3,a4) UlValidateParameters4(IStream_Write,a1,a2,a3,a4) 760#define CheckParameters_IStream_Write(a1,a2,a3,a4) CheckParameters4(IStream_Write,a1,a2,a3,a4) 761 762#define Validate_IStream_Seek(a1,a2,a3,a4) ValidateParameters4(IStream_Seek,a1,a2,a3,a4) 763#define UlValidate_IStream_Seek(a1,a2,a3,a4) UlValidateParameters4(IStream_Seek,a1,a2,a3,a4) 764#define CheckParameters_IStream_Seek(a1,a2,a3,a4) CheckParameters4(IStream_Seek,a1,a2,a3,a4) 765 766#define Validate_IStream_SetSize(a1,a2) ValidateParameters2(IStream_SetSize,a1,a2) 767#define UlValidate_IStream_SetSize(a1,a2) UlValidateParameters2(IStream_SetSize,a1,a2) 768#define CheckParameters_IStream_SetSize(a1,a2) CheckParameters2(IStream_SetSize,a1,a2) 769 770#define Validate_IStream_CopyTo(a1,a2,a3,a4,a5) ValidateParameters5(IStream_CopyTo,a1,a2,a3,a4,a5) 771#define UlValidate_IStream_CopyTo(a1,a2,a3,a4,a5) UlValidateParameters5(IStream_CopyTo,a1,a2,a3,a4,a5) 772#define CheckParameters_IStream_CopyTo(a1,a2,a3,a4,a5) CheckParameters5(IStream_CopyTo,a1,a2,a3,a4,a5) 773 774#define Validate_IStream_Commit(a1,a2) ValidateParameters2(IStream_Commit,a1,a2) 775#define UlValidate_IStream_Commit(a1,a2) UlValidateParameters2(IStream_Commit,a1,a2) 776#define CheckParameters_IStream_Commit(a1,a2) CheckParameters2(IStream_Commit,a1,a2) 777 778#define Validate_IStream_Revert(a1) ValidateParameters1(IStream_Revert,a1) 779#define UlValidate_IStream_Revert(a1) UlValidateParameters1(IStream_Revert,a1) 780#define CheckParameters_IStream_Revert(a1) CheckParameters1(IStream_Revert,a1) 781 782#define Validate_IStream_LockRegion(a1,a2,a3,a4) ValidateParameters4(IStream_LockRegion,a1,a2,a3,a4) 783#define UlValidate_IStream_LockRegion(a1,a2,a3,a4) UlValidateParameters4(IStream_LockRegion,a1,a2,a3,a4) 784#define CheckParameters_IStream_LockRegion(a1,a2,a3,a4) CheckParameters4(IStream_LockRegion,a1,a2,a3,a4) 785 786#define Validate_IStream_UnlockRegion(a1,a2,a3,a4) ValidateParameters4(IStream_UnlockRegion,a1,a2,a3,a4) 787#define UlValidate_IStream_UnlockRegion(a1,a2,a3,a4) UlValidateParameters4(IStream_UnlockRegion,a1,a2,a3,a4) 788#define CheckParameters_IStream_UnlockRegion(a1,a2,a3,a4) CheckParameters4(IStream_UnlockRegion,a1,a2,a3,a4) 789 790#define Validate_IStream_Stat(a1,a2,a3) ValidateParameters3(IStream_Stat,a1,a2,a3) 791#define UlValidate_IStream_Stat(a1,a2,a3) UlValidateParameters3(IStream_Stat,a1,a2,a3) 792#define CheckParameters_IStream_Stat(a1,a2,a3) CheckParameters3(IStream_Stat,a1,a2,a3) 793 794#define Validate_IStream_Clone(a1,a2) ValidateParameters2(IStream_Clone,a1,a2) 795#define UlValidate_IStream_Clone(a1,a2) UlValidateParameters2(IStream_Clone,a1,a2) 796#define CheckParameters_IStream_Clone(a1,a2) CheckParameters2(IStream_Clone,a1,a2) 797 798#define Validate_IMAPIAdviseSink_OnNotify(a1,a2,a3) ValidateParameters3(IMAPIAdviseSink_OnNotify,a1,a2,a3) 799#define UlValidate_IMAPIAdviseSink_OnNotify(a1,a2,a3) UlValidateParameters3(IMAPIAdviseSink_OnNotify,a1,a2,a3) 800#define CheckParameters_IMAPIAdviseSink_OnNotify(a1,a2,a3) CheckParameters3(IMAPIAdviseSink_OnNotify,a1,a2,a3) 801 802#if defined(_X86_) 803 STDAPI HrValidateParameters(METHODS eMethod,LPVOID *ppFirstArg); 804#else 805 STDAPIV HrValidateParametersV(METHODS eMethod,...); 806 STDAPIV HrValidateParametersValist(METHODS eMethod,va_list arglist); 807#endif 808 809#ifdef __cplusplus 810} 811#endif 812#endif 813