wabnot.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  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. #if !defined(MAPISPI_H) && !defined(WABSPI_H)
  7. #define WABSPI_H
  8. #ifndef BEGIN_INTERFACE
  9. #define BEGIN_INTERFACE
  10. #endif
  11. #ifndef MAPI_DIM
  12. #define MAPI_DIM 1
  13. #endif
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. typedef struct {
  18. ULONG cb;
  19. BYTE ab[MAPI_DIM];
  20. } NOTIFKEY,*LPNOTIFKEY;
  21. #define CbNewNOTIFKEY(_cb) (offsetof(NOTIFKEY,ab) + (_cb))
  22. #define CbNOTIFKEY(_lpkey) (offsetof(NOTIFKEY,ab) + (_lpkey)->cb)
  23. #define SizedNOTIFKEY(_cb,_name) struct _NOTIFKEY_ ## _name { ULONG cb; BYTE ab[_cb]; } _name
  24. #define NOTIFY_SYNC ((ULONG) 0x40000000)
  25. #define NOTIFY_CANCELED ((ULONG) 0x80000000)
  26. #define CALLBACK_DISCONTINUE ((ULONG) 0x80000000)
  27. #define NOTIFY_NEWMAIL ((ULONG) 0x00000001)
  28. #define NOTIFY_READYTOSEND ((ULONG) 0x00000002)
  29. #define NOTIFY_SENTDEFERRED ((ULONG) 0x00000004)
  30. #define NOTIFY_CRITSEC ((ULONG) 0x00001000)
  31. #define NOTIFY_NONCRIT ((ULONG) 0x00002000)
  32. #define NOTIFY_CONFIG_CHANGE ((ULONG) 0x00004000)
  33. #define NOTIFY_CRITICAL_ERROR ((ULONG) 0x10000000)
  34. #define NOTIFY_NEWMAIL_RECEIVED ((ULONG) 0x20000000)
  35. #define STATUSROW_UPDATE ((ULONG) 0x10000000)
  36. #define STGSTRM_RESET ((ULONG) 0x00000000)
  37. #define STGSTRM_CURRENT ((ULONG) 0x10000000)
  38. #define STGSTRM_MODIFY ((ULONG) 0x00000002)
  39. #define STGSTRM_CREATE ((ULONG) 0x00001000)
  40. #define MAPI_NON_READ ((ULONG) 0x00000001)
  41. #ifdef __cplusplus
  42. }
  43. #endif
  44. #endif