home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / wabiab.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  5KB  |  133 lines

  1. /* IAddrBook Interface ----------------------------------------------------- */
  2.  
  3. /*  CreateOneOff */
  4. /****** MAPI_UNICODE            ((ULONG) 0x80000000) */
  5. /****** MAPI_SEND_NO_RICH_INFO        ((ULONG) 0x00010000) */
  6.  
  7. /*  RecipOptions */
  8. /****** MAPI_UNICODE            ((ULONG) 0x80000000) */
  9.  
  10. /*  QueryDefaultRecipOpt */
  11. /****** MAPI_UNICODE            ((ULONG) 0x80000000) */
  12.  
  13. /*  GetSearchPath */
  14. /****** MAPI_UNICODE            ((ULONG) 0x80000000) */
  15.  
  16.  
  17. #ifndef WABIAB_H
  18. #define WABIAB_H
  19.  
  20. // These are WAB only flags for IAdrBook::ResolveName
  21. #define WAB_RESOLVE_LOCAL_ONLY      ((ULONG) 0x80000000)
  22. #define WAB_RESOLVE_ALL_EMAILS      ((ULONG) 0x40000000)
  23. #define WAB_RESOLVE_NO_ONE_OFFS     ((ULONG) 0x20000000)
  24. #define WAB_RESOLVE_NEED_CERT       ((ULONG) 0x10000000)
  25. #define WAB_RESOLVE_NO_NOT_FOUND_UI ((ULONG) 0x08000000)
  26.  
  27. #ifndef MAPIX_H
  28.  
  29. #define MAPI_IADDRBOOK_METHODS(IPURE)                                    \
  30.     MAPIMETHOD(OpenEntry)                                                \
  31.         (THIS_    ULONG                        cbEntryID,                    \
  32.                 LPENTRYID                    lpEntryID,                    \
  33.                 LPCIID                        lpInterface,                \
  34.                 ULONG                        ulFlags,                    \
  35.                 ULONG FAR *                    lpulObjType,                \
  36.                 LPUNKNOWN FAR *                lppUnk) IPURE;    \
  37.     MAPIMETHOD(CompareEntryIDs)                                            \
  38.         (THIS_    ULONG                        cbEntryID1,                    \
  39.                 LPENTRYID                    lpEntryID1,                    \
  40.                 ULONG                        cbEntryID2,                    \
  41.                 LPENTRYID                    lpEntryID2,                    \
  42.                 ULONG                        ulFlags,                    \
  43.                 ULONG FAR *                    lpulResult) IPURE;            \
  44.     MAPIMETHOD(Advise)                                                    \
  45.         (THIS_    ULONG                        cbEntryID,                    \
  46.                 LPENTRYID                    lpEntryID,                    \
  47.                 ULONG                        ulEventMask,                \
  48.                 LPMAPIADVISESINK            lpAdviseSink,                \
  49.                 ULONG FAR *                    lpulConnection) IPURE;        \
  50.     MAPIMETHOD(Unadvise)                                                \
  51.         (THIS_    ULONG                        ulConnection) IPURE;        \
  52.     MAPIMETHOD(CreateOneOff)                                            \
  53.         (THIS_    LPTSTR                        lpszName,                    \
  54.                 LPTSTR                        lpszAdrType,                \
  55.                 LPTSTR                        lpszAddress,                \
  56.                 ULONG                        ulFlags,                    \
  57.                 ULONG FAR *                    lpcbEntryID,                \
  58.                 LPENTRYID FAR *                lppEntryID) IPURE;            \
  59.     MAPIMETHOD(NewEntry)                                                \
  60.         (THIS_    ULONG                        ulUIParam,                    \
  61.                 ULONG                        ulFlags,                    \
  62.                 ULONG                        cbEIDContainer,                \
  63.                 LPENTRYID                    lpEIDContainer,                \
  64.                 ULONG                        cbEIDNewEntryTpl,            \
  65.                 LPENTRYID                    lpEIDNewEntryTpl,            \
  66.                 ULONG FAR *                    lpcbEIDNewEntry,            \
  67.                 LPENTRYID FAR *                lppEIDNewEntry) IPURE;        \
  68.     MAPIMETHOD(ResolveName)                                                \
  69.         (THIS_    ULONG                        ulUIParam,                    \
  70.                 ULONG                        ulFlags,                    \
  71.                 LPTSTR                        lpszNewEntryTitle,            \
  72.                 LPADRLIST                    lpAdrList) IPURE;            \
  73.     MAPIMETHOD(Address)                                                    \
  74.         (THIS_    ULONG FAR *                    lpulUIParam,                \
  75.                 LPADRPARM                    lpAdrParms,                    \
  76.                 LPADRLIST FAR *                lppAdrList) IPURE;            \
  77.     MAPIMETHOD(Details)                                                    \
  78.         (THIS_    ULONG FAR *                    lpulUIParam,                \
  79.                 LPFNDISMISS                    lpfnDismiss,                \
  80.                 LPVOID                        lpvDismissContext,            \
  81.                 ULONG                        cbEntryID,                    \
  82.                 LPENTRYID                    lpEntryID,                    \
  83.                 LPFNBUTTON                    lpfButtonCallback,            \
  84.                 LPVOID                        lpvButtonContext,            \
  85.                 LPTSTR                        lpszButtonText,                \
  86.                 ULONG                        ulFlags) IPURE;                \
  87.     MAPIMETHOD(RecipOptions)                                            \
  88.         (THIS_    ULONG                        ulUIParam,                    \
  89.                 ULONG                        ulFlags,                    \
  90.                 LPADRENTRY                    lpRecip) IPURE;                \
  91.     MAPIMETHOD(QueryDefaultRecipOpt)                                    \
  92.         (THIS_    LPTSTR                        lpszAdrType,                \
  93.                 ULONG                        ulFlags,                    \
  94.                 ULONG FAR *                    lpcValues,                    \
  95.                 LPSPropValue FAR *            lppOptions) IPURE;            \
  96.     MAPIMETHOD(GetPAB)                                                    \
  97.         (THIS_    ULONG FAR *                    lpcbEntryID,                \
  98.                 LPENTRYID FAR *                lppEntryID) IPURE;            \
  99.     MAPIMETHOD(SetPAB)                                                    \
  100.         (THIS_    ULONG                        cbEntryID,                    \
  101.                 LPENTRYID                    lpEntryID) IPURE;            \
  102.     MAPIMETHOD(GetDefaultDir)                                            \
  103.         (THIS_    ULONG FAR *                    lpcbEntryID,                \
  104.                 LPENTRYID FAR *                lppEntryID) IPURE;            \
  105.     MAPIMETHOD(SetDefaultDir)                                            \
  106.         (THIS_    ULONG                        cbEntryID,                    \
  107.                 LPENTRYID                    lpEntryID) IPURE;            \
  108.     MAPIMETHOD(GetSearchPath)                                            \
  109.         (THIS_    ULONG                        ulFlags,                    \
  110.                 LPSRowSet FAR *                lppSearchPath) IPURE;        \
  111.     MAPIMETHOD(SetSearchPath)                                            \
  112.         (THIS_    ULONG                        ulFlags,                    \
  113.                 LPSRowSet                    lpSearchPath) IPURE;        \
  114.     MAPIMETHOD(PrepareRecips)                                            \
  115.         (THIS_    ULONG                        ulFlags,                    \
  116.                 LPSPropTagArray                lpPropTagArray,                \
  117.                 LPADRLIST                    lpRecipList) IPURE;            \
  118.  
  119. #undef         INTERFACE
  120. #define         INTERFACE  IAddrBook
  121. DECLARE_MAPI_INTERFACE_(IAddrBook, IMAPIProp)
  122. {
  123.     BEGIN_INTERFACE    
  124.     MAPI_IUNKNOWN_METHODS(PURE)
  125.     MAPI_IMAPIPROP_METHODS(PURE)
  126.     MAPI_IADDRBOOK_METHODS(PURE)
  127. };
  128.  
  129. DECLARE_MAPI_INTERFACE_PTR(IAddrBook, LPADRBOOK);
  130. #endif  // MAPIX_H
  131. #endif  // WABIAB_H
  132.  
  133.