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

  1. /*
  2.  *  M A P I T A G S . H
  3.  *
  4.  *  Property tag definitions for standard properties of MAPI
  5.  *  objects.
  6.  *
  7.  *  The following ranges should be used for all property IDs. Note that
  8.  *  property IDs for objects other than messages and recipients should
  9.  *  all fall in the range 0x3000 to 0x3FFF:
  10.  *
  11.  *  From    To      Kind of property
  12.  *  --------------------------------
  13.  *  0001    0BFF    MAPI_defined envelope property
  14.  *  0C00    0DFF    MAPI_defined per-recipient property
  15.  *  0E00    0FFF    MAPI_defined non-transmittable property
  16.  *  1000    2FFF    MAPI_defined message content property
  17.  *
  18.  *  3000    3FFF    MAPI_defined property (usually not message or recipient)
  19.  *
  20.  *  4000    57FF    Transport-defined envelope property
  21.  *  5800    5FFF    Transport-defined per-recipient property
  22.  *  6000    65FF    User-defined non-transmittable property
  23.  *  6600    67FF    Provider-defined internal non-transmittable property
  24.  *  6800    7BFF    Message class-defined content property
  25.  *  7C00    7FFF    Message class-defined non-transmittable
  26.  *                  property
  27.  *
  28.  *  8000    FFFE    User-defined Name-to-id mapped property
  29.  *
  30.  *  The 3000-3FFF range is further subdivided as follows:
  31.  *
  32.  *  From    To      Kind of property
  33.  *  --------------------------------
  34.  *  3000    33FF    Common property such as display name, entry ID
  35.  *  3400    35FF    Message store object
  36.  *  3600    36FF    Folder or AB container
  37.  *  3700    38FF    Attachment
  38.  *  3900    39FF    Address book object
  39.  *  3A00    3BFF    Mail user
  40.  *  3C00    3CFF    Distribution list
  41.  *  3D00    3DFF    Profile section
  42.  *  3E00    3FFF    Status object
  43.  *
  44.  *  Copyright 1986-1996 Microsoft Corporation. All Rights Reserved.
  45.  */
  46.  
  47. #ifndef MAPITAGS_H
  48. #define MAPITAGS_H
  49.  
  50. /* Determine if a property is transmittable. */
  51.  
  52. #define FIsTransmittable(ulPropTag) \
  53.     ((PROP_ID (ulPropTag) <  (ULONG)0x0E00) || \
  54.     (PROP_ID (ulPropTag)  >= (ULONG)0x8000) || \
  55.     ((PROP_ID (ulPropTag) >= (ULONG)0x1000) && (PROP_ID (ulPropTag) < (ULONG)0x6000)) || \
  56.     ((PROP_ID (ulPropTag) >= (ULONG)0x6800) && (PROP_ID (ulPropTag) < (ULONG)0x7C00)))
  57.  
  58. /*
  59.  *  Message envelope properties
  60.  */
  61.  
  62. #define PR_ACKNOWLEDGEMENT_MODE                     PROP_TAG( PT_LONG,      0x0001)
  63. #define PR_ALTERNATE_RECIPIENT_ALLOWED              PROP_TAG( PT_BOOLEAN,   0x0002)
  64. #define PR_AUTHORIZING_USERS                        PROP_TAG( PT_BINARY,    0x0003)
  65. #define PR_AUTO_FORWARD_COMMENT                     PROP_TAG( PT_TSTRING,   0x0004)
  66. #define PR_AUTO_FORWARD_COMMENT_W                   PROP_TAG( PT_UNICODE,   0x0004)
  67. #define PR_AUTO_FORWARD_COMMENT_A                   PROP_TAG( PT_STRING8,   0x0004)
  68. #define PR_AUTO_FORWARDED                           PROP_TAG( PT_BOOLEAN,   0x0005)
  69. #define PR_CONTENT_CONFIDENTIALITY_ALGORITHM_ID     PROP_TAG( PT_BINARY,    0x0006)
  70. #define PR_CONTENT_CORRELATOR                       PROP_TAG( PT_BINARY,    0x0007)
  71. #define PR_CONTENT_IDENTIFIER                       PROP_TAG( PT_TSTRING,   0x0008)
  72. #define PR_CONTENT_IDENTIFIER_W                     PROP_TAG( PT_UNICODE,   0x0008)
  73. #define PR_CONTENT_IDENTIFIER_A                     PROP_TAG( PT_STRING8,   0x0008)
  74. #define PR_CONTENT_LENGTH                           PROP_TAG( PT_LONG,      0x0009)
  75. #define PR_CONTENT_RETURN_REQUESTED                 PROP_TAG( PT_BOOLEAN,   0x000A)
  76.  
  77.  
  78.  
  79. #define PR_CONVERSATION_KEY                         PROP_TAG( PT_BINARY,    0x000B)
  80.  
  81. #define PR_CONVERSION_EITS                          PROP_TAG( PT_BINARY,    0x000C)
  82. #define PR_CONVERSION_WITH_LOSS_PROHIBITED          PROP_TAG( PT_BOOLEAN,   0x000D)
  83. #define PR_CONVERTED_EITS                           PROP_TAG( PT_BINARY,    0x000E)
  84. #define PR_DEFERRED_DELIVERY_TIME                   PROP_TAG( PT_SYSTIME,   0x000F)
  85. #define PR_DELIVER_TIME                             PROP_TAG( PT_SYSTIME,   0x0010)
  86. #define PR_DISCARD_REASON                           PROP_TAG( PT_LONG,      0x0011)
  87. #define PR_DISCLOSURE_OF_RECIPIENTS                 PROP_TAG( PT_BOOLEAN,   0x0012)
  88. #define PR_DL_EXPANSION_HISTORY                     PROP_TAG( PT_BINARY,    0x0013)
  89. #define PR_DL_EXPANSION_PROHIBITED                  PROP_TAG( PT_BOOLEAN,   0x0014)
  90. #define PR_EXPIRY_TIME                              PROP_TAG( PT_SYSTIME,   0x0015)
  91. #define PR_IMPLICIT_CONVERSION_PROHIBITED           PROP_TAG( PT_BOOLEAN,   0x0016)
  92. #define PR_IMPORTANCE                               PROP_TAG( PT_LONG,      0x0017)
  93. #define PR_IPM_ID                                   PROP_TAG( PT_BINARY,    0x0018)
  94. #define PR_LATEST_DELIVERY_TIME                     PROP_TAG( PT_SYSTIME,   0x0019)
  95. #define PR_MESSAGE_CLASS                            PROP_TAG( PT_TSTRING,   0x001A)
  96. #define PR_MESSAGE_CLASS_W                          PROP_TAG( PT_UNICODE,   0x001A)
  97. #define PR_MESSAGE_CLASS_A                          PROP_TAG( PT_STRING8,   0x001A)
  98. #define PR_MESSAGE_DELIVERY_ID                      PROP_TAG( PT_BINARY,    0x001B)
  99.  
  100.  
  101.  
  102.  
  103.  
  104. #define PR_MESSAGE_SECURITY_LABEL                   PROP_TAG( PT_BINARY,    0x001E)
  105. #define PR_OBSOLETED_IPMS                           PROP_TAG( PT_BINARY,    0x001F)
  106. #define PR_ORIGINALLY_INTENDED_RECIPIENT_NAME       PROP_TAG( PT_BINARY,    0x0020)
  107. #define PR_ORIGINAL_EITS                            PROP_TAG( PT_BINARY,    0x0021)
  108. #define PR_ORIGINATOR_CERTIFICATE                   PROP_TAG( PT_BINARY,    0x0022)
  109. #define PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED     PROP_TAG( PT_BOOLEAN,   0x0023)
  110. #define PR_ORIGINATOR_RETURN_ADDRESS                PROP_TAG( PT_BINARY,    0x0024)
  111.  
  112.  
  113.  
  114. #define PR_PARENT_KEY                               PROP_TAG( PT_BINARY,    0x0025)
  115. #define PR_PRIORITY                                 PROP_TAG( PT_LONG,      0x0026)
  116.  
  117.  
  118.  
  119. #define PR_ORIGIN_CHECK                             PROP_TAG( PT_BINARY,    0x0027)
  120. #define PR_PROOF_OF_SUBMISSION_REQUESTED            PROP_TAG( PT_BOOLEAN,   0x0028)
  121. #define PR_READ_RECEIPT_REQUESTED                   PROP_TAG( PT_BOOLEAN,   0x0029)
  122. #define PR_RECEIPT_TIME                             PROP_TAG( PT_SYSTIME,   0x002A)
  123. #define PR_RECIPIENT_REASSIGNMENT_PROHIBITED        PROP_TAG( PT_BOOLEAN,   0x002B)
  124. #define PR_REDIRECTION_HISTORY                      PROP_TAG( PT_BINARY,    0x002C)
  125. #define PR_RELATED_IPMS                             PROP_TAG( PT_BINARY,    0x002D)
  126. #define PR_ORIGINAL_SENSITIVITY                     PROP_TAG( PT_LONG,      0x002E)
  127. #define PR_LANGUAGES                                PROP_TAG( PT_TSTRING,   0x002F)
  128. #define PR_LANGUAGES_W                              PROP_TAG( PT_UNICODE,   0x002F)
  129. #define PR_LANGUAGES_A                              PROP_TAG( PT_STRING8,   0x002F)
  130. #define PR_REPLY_TIME                               PROP_TAG( PT_SYSTIME,   0x0030)
  131. #define PR_REPORT_TAG                               PROP_TAG( PT_BINARY,    0x0031)
  132. #define PR_REPORT_TIME                              PROP_TAG( PT_SYSTIME,   0x0032)
  133. #define PR_RETURNED_IPM                             PROP_TAG( PT_BOOLEAN,   0x0033)
  134. #define PR_SECURITY                                 PROP_TAG( PT_LONG,      0x0034)
  135. #define PR_INCOMPLETE_COPY                          PROP_TAG( PT_BOOLEAN,   0x0035)
  136. #define PR_SENSITIVITY                              PROP_TAG( PT_LONG,      0x0036)
  137. #define PR_SUBJECT                                  PROP_TAG( PT_TSTRING,   0x0037)
  138. #define PR_SUBJECT_W                                PROP_TAG( PT_UNICODE,   0x0037)
  139. #define PR_SUBJECT_A                                PROP_TAG( PT_STRING8,   0x0037)
  140. #define PR_SUBJECT_IPM                              PROP_TAG( PT_BINARY,    0x0038)
  141. #define PR_CLIENT_SUBMIT_TIME                       PROP_TAG( PT_SYSTIME,   0x0039)
  142. #define PR_REPORT_NAME                              PROP_TAG( PT_TSTRING,   0x003A)
  143. #define PR_REPORT_NAME_W                            PROP_TAG( PT_UNICODE,   0x003A)
  144. #define PR_REPORT_NAME_A                            PROP_TAG( PT_STRING8,   0x003A)
  145. #define PR_SENT_REPRESENTING_SEARCH_KEY             PROP_TAG( PT_BINARY,    0x003B)
  146. #define PR_X400_CONTENT_TYPE                        PROP_TAG( PT_BINARY,    0x003C)
  147. #define PR_SUBJECT_PREFIX                           PROP_TAG( PT_TSTRING,   0x003D)
  148. #define PR_SUBJECT_PREFIX_W                         PROP_TAG( PT_UNICODE,   0x003D)
  149. #define PR_SUBJECT_PREFIX_A                         PROP_TAG( PT_STRING8,   0x003D)
  150. #define PR_NON_RECEIPT_REASON                       PROP_TAG( PT_LONG,      0x003E)
  151. #define PR_RECEIVED_BY_ENTRYID                      PROP_TAG( PT_BINARY,    0x003F)
  152. #define PR_RECEIVED_BY_NAME                         PROP_TAG( PT_TSTRING,   0x0040)
  153. #define PR_RECEIVED_BY_NAME_W                       PROP_TAG( PT_UNICODE,   0x0040)
  154. #define PR_RECEIVED_BY_NAME_A                       PROP_TAG( PT_STRING8,   0x0040)
  155. #define PR_SENT_REPRESENTING_ENTRYID                PROP_TAG( PT_BINARY,    0x0041)
  156. #define PR_SENT_REPRESENTING_NAME                   PROP_TAG( PT_TSTRING,   0x0042)
  157. #define PR_SENT_REPRESENTING_NAME_W                 PROP_TAG( PT_UNICODE,   0x0042)
  158. #define PR_SENT_REPRESENTING_NAME_A                 PROP_TAG( PT_STRING8,   0x0042)
  159. #define PR_RCVD_REPRESENTING_ENTRYID                PROP_TAG( PT_BINARY,    0x0043)
  160. #define PR_RCVD_REPRESENTING_NAME                   PROP_TAG( PT_TSTRING,   0x0044)
  161. #define PR_RCVD_REPRESENTING_NAME_W                 PROP_TAG( PT_UNICODE,   0x0044)
  162. #define PR_RCVD_REPRESENTING_NAME_A                 PROP_TAG( PT_STRING8,   0x0044)
  163. #define PR_REPORT_ENTRYID                           PROP_TAG( PT_BINARY,    0x0045)
  164. #define PR_READ_RECEIPT_ENTRYID                     PROP_TAG( PT_BINARY,    0x0046)
  165. #define PR_MESSAGE_SUBMISSION_ID                    PROP_TAG( PT_BINARY,    0x0047)
  166. #define PR_PROVIDER_SUBMIT_TIME                     PROP_TAG( PT_SYSTIME,   0x0048)
  167. #define PR_ORIGINAL_SUBJECT                         PROP_TAG( PT_TSTRING,   0x0049)
  168. #define PR_ORIGINAL_SUBJECT_W                       PROP_TAG( PT_UNICODE,   0x0049)
  169. #define PR_ORIGINAL_SUBJECT_A                       PROP_TAG( PT_STRING8,   0x0049)
  170. #define PR_DISC_VAL                                 PROP_TAG( PT_BOOLEAN,   0x004A)
  171. #define PR_ORIG_MESSAGE_CLASS                       PROP_TAG( PT_TSTRING,   0x004B)
  172. #define PR_ORIG_MESSAGE_CLASS_W                     PROP_TAG( PT_UNICODE,   0x004B)
  173. #define PR_ORIG_MESSAGE_CLASS_A                     PROP_TAG( PT_STRING8,   0x004B)
  174. #define PR_ORIGINAL_AUTHOR_ENTRYID                  PROP_TAG( PT_BINARY,    0x004C)
  175. #define PR_ORIGINAL_AUTHOR_NAME                     PROP_TAG( PT_TSTRING,   0x004D)
  176. #define PR_ORIGINAL_AUTHOR_NAME_W                   PROP_TAG( PT_UNICODE,   0x004D)
  177. #define PR_ORIGINAL_AUTHOR_NAME_A                   PROP_TAG( PT_STRING8,   0x004D)
  178. #define PR_ORIGINAL_SUBMIT_TIME                     PROP_TAG( PT_SYSTIME,   0x004E)
  179. #define PR_REPLY_RECIPIENT_ENTRIES                  PROP_TAG( PT_BINARY,    0x004F)
  180. #define PR_REPLY_RECIPIENT_NAMES                    PROP_TAG( PT_TSTRING,   0x0050)
  181. #define PR_REPLY_RECIPIENT_NAMES_W                  PROP_TAG( PT_UNICODE,   0x0050)
  182. #define PR_REPLY_RECIPIENT_NAMES_A                  PROP_TAG( PT_STRING8,   0x0050)
  183.  
  184. #define PR_RECEIVED_BY_SEARCH_KEY                   PROP_TAG( PT_BINARY,    0x0051)
  185. #define PR_RCVD_REPRESENTING_SEARCH_KEY             PROP_TAG( PT_BINARY,    0x0052)
  186. #define PR_READ_RECEIPT_SEARCH_KEY                  PROP_TAG( PT_BINARY,    0x0053)
  187. #define PR_REPORT_SEARCH_KEY                        PROP_TAG( PT_BINARY,    0x0054)
  188. #define PR_ORIGINAL_DELIVERY_TIME                   PROP_TAG( PT_SYSTIME,   0x0055)
  189. #define PR_ORIGINAL_AUTHOR_SEARCH_KEY               PROP_TAG( PT_BINARY,    0x0056)
  190.  
  191. #define PR_MESSAGE_TO_ME                            PROP_TAG( PT_BOOLEAN,   0x0057)
  192. #define PR_MESSAGE_CC_ME                            PROP_TAG( PT_BOOLEAN,   0x0058)
  193. #define PR_MESSAGE_RECIP_ME                         PROP_TAG( PT_BOOLEAN,   0x0059)
  194.  
  195. #define PR_ORIGINAL_SENDER_NAME                     PROP_TAG( PT_TSTRING,   0x005A)
  196. #define PR_ORIGINAL_SENDER_NAME_W                   PROP_TAG( PT_UNICODE,   0x005A)
  197. #define PR_ORIGINAL_SENDER_NAME_A                   PROP_TAG( PT_STRING8,   0x005A)
  198. #define PR_ORIGINAL_SENDER_ENTRYID                  PROP_TAG( PT_BINARY,    0x005B)
  199. #define PR_ORIGINAL_SENDER_SEARCH_KEY               PROP_TAG( PT_BINARY,    0x005C)
  200. #define PR_ORIGINAL_SENT_REPRESENTING_NAME          PROP_TAG( PT_TSTRING,   0x005D)
  201. #define PR_ORIGINAL_SENT_REPRESENTING_NAME_W        PROP_TAG( PT_UNICODE,   0x005D)
  202. #define PR_ORIGINAL_SENT_REPRESENTING_NAME_A        PROP_TAG( PT_STRING8,   0x005D)
  203. #define PR_ORIGINAL_SENT_REPRESENTING_ENTRYID       PROP_TAG( PT_BINARY,    0x005E)
  204. #define PR_ORIGINAL_SENT_REPRESENTING_SEARCH_KEY    PROP_TAG( PT_BINARY,    0x005F)
  205.  
  206. #define PR_START_DATE                               PROP_TAG( PT_SYSTIME,   0x0060)
  207. #define PR_END_DATE                                 PROP_TAG( PT_SYSTIME,   0x0061)
  208. #define PR_OWNER_APPT_ID                            PROP_TAG( PT_LONG,      0x0062)
  209. #define PR_RESPONSE_REQUESTED                       PROP_TAG( PT_BOOLEAN,   0x0063)
  210.  
  211. #define PR_SENT_REPRESENTING_ADDRTYPE               PROP_TAG( PT_TSTRING,   0x0064)
  212. #define PR_SENT_REPRESENTING_ADDRTYPE_W             PROP_TAG( PT_UNICODE,   0x0064)
  213. #define PR_SENT_REPRESENTING_ADDRTYPE_A             PROP_TAG( PT_STRING8,   0x0064)
  214. #define PR_SENT_REPRESENTING_EMAIL_ADDRESS          PROP_TAG( PT_TSTRING,   0x0065)
  215. #define PR_SENT_REPRESENTING_EMAIL_ADDRESS_W        PROP_TAG( PT_UNICODE,   0x0065)
  216. #define PR_SENT_REPRESENTING_EMAIL_ADDRESS_A        PROP_TAG( PT_STRING8,   0x0065)
  217.  
  218. #define PR_ORIGINAL_SENDER_ADDRTYPE                 PROP_TAG( PT_TSTRING,   0x0066)
  219. #define PR_ORIGINAL_SENDER_ADDRTYPE_W               PROP_TAG( PT_UNICODE,   0x0066)
  220. #define PR_ORIGINAL_SENDER_ADDRTYPE_A               PROP_TAG( PT_STRING8,   0x0066)
  221. #define PR_ORIGINAL_SENDER_EMAIL_ADDRESS            PROP_TAG( PT_TSTRING,   0x0067)
  222. #define PR_ORIGINAL_SENDER_EMAIL_ADDRESS_W          PROP_TAG( PT_UNICODE,   0x0067)
  223. #define PR_ORIGINAL_SENDER_EMAIL_ADDRESS_A          PROP_TAG( PT_STRING8,   0x0067)
  224.  
  225. #define PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE      PROP_TAG( PT_TSTRING,   0x0068)
  226. #define PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_W    PROP_TAG( PT_UNICODE,   0x0068)
  227. #define PR_ORIGINAL_SENT_REPRESENTING_ADDRTYPE_A    PROP_TAG( PT_STRING8,   0x0068)
  228. #define PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS PROP_TAG( PT_TSTRING,   0x0069)
  229. #define PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_W   PROP_TAG( PT_UNICODE,   0x0069)
  230. #define PR_ORIGINAL_SENT_REPRESENTING_EMAIL_ADDRESS_A   PROP_TAG( PT_STRING8,   0x0069)
  231.  
  232. #define PR_CONVERSATION_TOPIC                       PROP_TAG( PT_TSTRING,   0x0070)
  233. #define PR_CONVERSATION_TOPIC_W                     PROP_TAG( PT_UNICODE,   0x0070)
  234. #define PR_CONVERSATION_TOPIC_A                     PROP_TAG( PT_STRING8,   0x0070)
  235. #define PR_CONVERSATION_INDEX                       PROP_TAG( PT_BINARY,    0x0071)
  236.  
  237. #define PR_ORIGINAL_DISPLAY_BCC                     PROP_TAG( PT_TSTRING,   0x0072)
  238. #define PR_ORIGINAL_DISPLAY_BCC_W                   PROP_TAG( PT_UNICODE,   0x0072)
  239. #define PR_ORIGINAL_DISPLAY_BCC_A                   PROP_TAG( PT_STRING8,   0x0072)
  240. #define PR_ORIGINAL_DISPLAY_CC                      PROP_TAG( PT_TSTRING,   0x0073)
  241. #define PR_ORIGINAL_DISPLAY_CC_W                    PROP_TAG( PT_UNICODE,   0x0073)
  242. #define PR_ORIGINAL_DISPLAY_CC_A                    PROP_TAG( PT_STRING8,   0x0073)
  243. #define PR_ORIGINAL_DISPLAY_TO                      PROP_TAG( PT_TSTRING,   0x0074)
  244. #define PR_ORIGINAL_DISPLAY_TO_W                    PROP_TAG( PT_UNICODE,   0x0074)
  245. #define PR_ORIGINAL_DISPLAY_TO_A                    PROP_TAG( PT_STRING8,   0x0074)
  246.  
  247. #define PR_RECEIVED_BY_ADDRTYPE                     PROP_TAG( PT_TSTRING,   0x0075)
  248. #define PR_RECEIVED_BY_ADDRTYPE_W                   PROP_TAG( PT_UNICODE,   0x0075)
  249. #define PR_RECEIVED_BY_ADDRTYPE_A                   PROP_TAG( PT_STRING8,   0x0075)
  250. #define PR_RECEIVED_BY_EMAIL_ADDRESS                PROP_TAG( PT_TSTRING,   0x0076)
  251. #define PR_RECEIVED_BY_EMAIL_ADDRESS_W              PROP_TAG( PT_UNICODE,   0x0076)
  252. #define PR_RECEIVED_BY_EMAIL_ADDRESS_A              PROP_TAG( PT_STRING8,   0x0076)
  253.  
  254. #define PR_RCVD_REPRESENTING_ADDRTYPE               PROP_TAG( PT_TSTRING,   0x0077)
  255. #define PR_RCVD_REPRESENTING_ADDRTYPE_W             PROP_TAG( PT_UNICODE,   0x0077)
  256. #define PR_RCVD_REPRESENTING_ADDRTYPE_A             PROP_TAG( PT_STRING8,   0x0077)
  257. #define PR_RCVD_REPRESENTING_EMAIL_ADDRESS          PROP_TAG( PT_TSTRING,   0x0078)
  258. #define PR_RCVD_REPRESENTING_EMAIL_ADDRESS_W        PROP_TAG( PT_UNICODE,   0x0078)
  259. #define PR_RCVD_REPRESENTING_EMAIL_ADDRESS_A        PROP_TAG( PT_STRING8,   0x0078)
  260.  
  261. #define PR_ORIGINAL_AUTHOR_ADDRTYPE                 PROP_TAG( PT_TSTRING,   0x0079)
  262. #define PR_ORIGINAL_AUTHOR_ADDRTYPE_W               PROP_TAG( PT_UNICODE,   0x0079)
  263. #define PR_ORIGINAL_AUTHOR_ADDRTYPE_A               PROP_TAG( PT_STRING8,   0x0079)
  264. #define PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS            PROP_TAG( PT_TSTRING,   0x007A)
  265. #define PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_W          PROP_TAG( PT_UNICODE,   0x007A)
  266. #define PR_ORIGINAL_AUTHOR_EMAIL_ADDRESS_A          PROP_TAG( PT_STRING8,   0x007A)
  267.  
  268. #define PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE       PROP_TAG( PT_TSTRING,   0x007B)
  269. #define PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_W     PROP_TAG( PT_UNICODE,   0x007B)
  270. #define PR_ORIGINALLY_INTENDED_RECIP_ADDRTYPE_A     PROP_TAG( PT_STRING8,   0x007B)
  271. #define PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS  PROP_TAG( PT_TSTRING,   0x007C)
  272. #define PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_W    PROP_TAG( PT_UNICODE,   0x007C)
  273. #define PR_ORIGINALLY_INTENDED_RECIP_EMAIL_ADDRESS_A    PROP_TAG( PT_STRING8,   0x007C)
  274.  
  275. #define PR_TRANSPORT_MESSAGE_HEADERS                PROP_TAG(PT_TSTRING,    0x007D)
  276. #define PR_TRANSPORT_MESSAGE_HEADERS_W              PROP_TAG(PT_UNICODE,    0x007D)
  277. #define PR_TRANSPORT_MESSAGE_HEADERS_A              PROP_TAG(PT_STRING8,    0x007D)
  278.  
  279. #define PR_DELEGATION                               PROP_TAG(PT_BINARY,     0x007E)
  280.  
  281. #define PR_TNEF_CORRELATION_KEY                     PROP_TAG(PT_BINARY,     0x007F)
  282.  
  283.  
  284.  
  285. /*
  286.  *  Message content properties
  287.  */
  288.  
  289. #define PR_BODY                                     PROP_TAG( PT_TSTRING,   0x1000)
  290. #define PR_BODY_W                                   PROP_TAG( PT_UNICODE,   0x1000)
  291. #define PR_BODY_A                                   PROP_TAG( PT_STRING8,   0x1000)
  292. #define PR_REPORT_TEXT                              PROP_TAG( PT_TSTRING,   0x1001)
  293. #define PR_REPORT_TEXT_W                            PROP_TAG( PT_UNICODE,   0x1001)
  294. #define PR_REPORT_TEXT_A                            PROP_TAG( PT_STRING8,   0x1001)
  295. #define PR_ORIGINATOR_AND_DL_EXPANSION_HISTORY      PROP_TAG( PT_BINARY,    0x1002)
  296. #define PR_REPORTING_DL_NAME                        PROP_TAG( PT_BINARY,    0x1003)
  297. #define PR_REPORTING_MTA_CERTIFICATE                PROP_TAG( PT_BINARY,    0x1004)
  298.  
  299. /*  Removed PR_REPORT_ORIGIN_AUTHENTICATION_CHECK with DCR 3865, use PR_ORIGIN_CHECK */
  300.  
  301. #define PR_RTF_SYNC_BODY_CRC                        PROP_TAG( PT_LONG,      0x1006)
  302. #define PR_RTF_SYNC_BODY_COUNT                      PROP_TAG( PT_LONG,      0x1007)
  303. #define PR_RTF_SYNC_BODY_TAG                        PROP_TAG( PT_TSTRING,   0x1008)
  304. #define PR_RTF_SYNC_BODY_TAG_W                      PROP_TAG( PT_UNICODE,   0x1008)
  305. #define PR_RTF_SYNC_BODY_TAG_A                      PROP_TAG( PT_STRING8,   0x1008)
  306. #define PR_RTF_COMPRESSED                           PROP_TAG( PT_BINARY,    0x1009)
  307. #define PR_RTF_SYNC_PREFIX_COUNT                    PROP_TAG( PT_LONG,      0x1010)
  308. #define PR_RTF_SYNC_TRAILING_COUNT                  PROP_TAG( PT_LONG,      0x1011)
  309. #define PR_ORIGINALLY_INTENDED_RECIP_ENTRYID        PROP_TAG( PT_BINARY,    0x1012)
  310.  
  311. /*
  312.  *  Reserved 0x1100-0x1200
  313.  */
  314.  
  315.  
  316. /*
  317.  *  Message recipient properties
  318.  */
  319.  
  320. #define PR_CONTENT_INTEGRITY_CHECK                  PROP_TAG( PT_BINARY,    0x0C00)
  321. #define PR_EXPLICIT_CONVERSION                      PROP_TAG( PT_LONG,      0x0C01)
  322. #define PR_IPM_RETURN_REQUESTED                     PROP_TAG( PT_BOOLEAN,   0x0C02)
  323. #define PR_MESSAGE_TOKEN                            PROP_TAG( PT_BINARY,    0x0C03)
  324. #define PR_NDR_REASON_CODE                          PROP_TAG( PT_LONG,      0x0C04)
  325. #define PR_NDR_DIAG_CODE                            PROP_TAG( PT_LONG,      0x0C05)
  326. #define PR_NON_RECEIPT_NOTIFICATION_REQUESTED       PROP_TAG( PT_BOOLEAN,   0x0C06)
  327. #define PR_DELIVERY_POINT                           PROP_TAG( PT_LONG,      0x0C07)
  328.  
  329. #define PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED PROP_TAG( PT_BOOLEAN,   0x0C08)
  330. #define PR_ORIGINATOR_REQUESTED_ALTERNATE_RECIPIENT PROP_TAG( PT_BINARY,    0x0C09)
  331. #define PR_PHYSICAL_DELIVERY_BUREAU_FAX_DELIVERY    PROP_TAG( PT_BOOLEAN,   0x0C0A)
  332. #define PR_PHYSICAL_DELIVERY_MODE                   PROP_TAG( PT_LONG,      0x0C0B)
  333. #define PR_PHYSICAL_DELIVERY_REPORT_REQUEST         PROP_TAG( PT_LONG,      0x0C0C)
  334. #define PR_PHYSICAL_FORWARDING_ADDRESS              PROP_TAG( PT_BINARY,    0x0C0D)
  335. #define PR_PHYSICAL_FORWARDING_ADDRESS_REQUESTED    PROP_TAG( PT_BOOLEAN,   0x0C0E)
  336. #define PR_PHYSICAL_FORWARDING_PROHIBITED           PROP_TAG( PT_BOOLEAN,   0x0C0F)
  337. #define PR_PHYSICAL_RENDITION_ATTRIBUTES            PROP_TAG( PT_BINARY,    0x0C10)
  338. #define PR_PROOF_OF_DELIVERY                        PROP_TAG( PT_BINARY,    0x0C11)
  339. #define PR_PROOF_OF_DELIVERY_REQUESTED              PROP_TAG( PT_BOOLEAN,   0x0C12)
  340. #define PR_RECIPIENT_CERTIFICATE                    PROP_TAG( PT_BINARY,    0x0C13)
  341. #define PR_RECIPIENT_NUMBER_FOR_ADVICE              PROP_TAG( PT_TSTRING,   0x0C14)
  342. #define PR_RECIPIENT_NUMBER_FOR_ADVICE_W            PROP_TAG( PT_UNICODE,   0x0C14)
  343. #define PR_RECIPIENT_NUMBER_FOR_ADVICE_A            PROP_TAG( PT_STRING8,   0x0C14)
  344. #define PR_RECIPIENT_TYPE                           PROP_TAG( PT_LONG,      0x0C15)
  345. #define PR_REGISTERED_MAIL_TYPE                     PROP_TAG( PT_LONG,      0x0C16)
  346. #define PR_REPLY_REQUESTED                          PROP_TAG( PT_BOOLEAN,   0x0C17)
  347. #define PR_REQUESTED_DELIVERY_METHOD                PROP_TAG( PT_LONG,      0x0C18)
  348. #define PR_SENDER_ENTRYID                           PROP_TAG( PT_BINARY,    0x0C19)
  349. #define PR_SENDER_NAME                              PROP_TAG( PT_TSTRING,   0x0C1A)
  350. #define PR_SENDER_NAME_W                            PROP_TAG( PT_UNICODE,   0x0C1A)
  351. #define PR_SENDER_NAME_A                            PROP_TAG( PT_STRING8,   0x0C1A)
  352. #define PR_SUPPLEMENTARY_INFO                       PROP_TAG( PT_TSTRING,   0x0C1B)
  353. #define PR_SUPPLEMENTARY_INFO_W                     PROP_TAG( PT_UNICODE,   0x0C1B)
  354. #define PR_SUPPLEMENTARY_INFO_A                     PROP_TAG( PT_STRING8,   0x0C1B)
  355. #define PR_TYPE_OF_MTS_USER                         PROP_TAG( PT_LONG,      0x0C1C)
  356. #define PR_SENDER_SEARCH_KEY                        PROP_TAG( PT_BINARY,    0x0C1D)
  357. #define PR_SENDER_ADDRTYPE                          PROP_TAG( PT_TSTRING,   0x0C1E)
  358. #define PR_SENDER_ADDRTYPE_W                        PROP_TAG( PT_UNICODE,   0x0C1E)
  359. #define PR_SENDER_ADDRTYPE_A                        PROP_TAG( PT_STRING8,   0x0C1E)
  360. #define PR_SENDER_EMAIL_ADDRESS                     PROP_TAG( PT_TSTRING,   0x0C1F)
  361. #define PR_SENDER_EMAIL_ADDRESS_W                   PROP_TAG( PT_UNICODE,   0x0C1F)
  362. #define PR_SENDER_EMAIL_ADDRESS_A                   PROP_TAG( PT_STRING8,   0x0C1F)
  363.  
  364. /*
  365.  *  Message non-transmittable properties
  366.  */
  367.  
  368. /*
  369.  * The two tags, PR_MESSAGE_RECIPIENTS and PR_MESSAGE_ATTACHMENTS,
  370.  * are to be used in the exclude list passed to
  371.  * IMessage::CopyTo when the caller wants either the recipients or attachments
  372.  * of the message to not get copied.  It is also used in the ProblemArray
  373.  * return from IMessage::CopyTo when an error is encountered copying them
  374.  */
  375.  
  376. #define PR_CURRENT_VERSION                          PROP_TAG( PT_I8,        0x0E00)
  377. #define PR_DELETE_AFTER_SUBMIT                      PROP_TAG( PT_BOOLEAN,   0x0E01)
  378. #define PR_DISPLAY_BCC                              PROP_TAG( PT_TSTRING,   0x0E02)
  379. #define PR_DISPLAY_BCC_W                            PROP_TAG( PT_UNICODE,   0x0E02)
  380. #define PR_DISPLAY_BCC_A                            PROP_TAG( PT_STRING8,   0x0E02)
  381. #define PR_DISPLAY_CC                               PROP_TAG( PT_TSTRING,   0x0E03)
  382. #define PR_DISPLAY_CC_W                             PROP_TAG( PT_UNICODE,   0x0E03)
  383. #define PR_DISPLAY_CC_A                             PROP_TAG( PT_STRING8,   0x0E03)
  384. #define PR_DISPLAY_TO                               PROP_TAG( PT_TSTRING,   0x0E04)
  385. #define PR_DISPLAY_TO_W                             PROP_TAG( PT_UNICODE,   0x0E04)
  386. #define PR_DISPLAY_TO_A                             PROP_TAG( PT_STRING8,   0x0E04)
  387. #define PR_PARENT_DISPLAY                           PROP_TAG( PT_TSTRING,   0x0E05)
  388. #define PR_PARENT_DISPLAY_W                         PROP_TAG( PT_UNICODE,   0x0E05)
  389. #define PR_PARENT_DISPLAY_A                         PROP_TAG( PT_STRING8,   0x0E05)
  390. #define PR_MESSAGE_DELIVERY_TIME                    PROP_TAG( PT_SYSTIME,   0x0E06)
  391. #define PR_MESSAGE_FLAGS                            PROP_TAG( PT_LONG,      0x0E07)
  392. #define PR_MESSAGE_SIZE                             PROP_TAG( PT_LONG,      0x0E08)
  393. #define PR_PARENT_ENTRYID                           PROP_TAG( PT_BINARY,    0x0E09)
  394. #define PR_SENTMAIL_ENTRYID                         PROP_TAG( PT_BINARY,    0x0E0A)
  395. #define PR_CORRELATE                                PROP_TAG( PT_BOOLEAN,   0x0E0C)
  396. #define PR_CORRELATE_MTSID                          PROP_TAG( PT_BINARY,    0x0E0D)
  397. #define PR_DISCRETE_VALUES                          PROP_TAG( PT_BOOLEAN,   0x0E0E)
  398. #define PR_RESPONSIBILITY                           PROP_TAG( PT_BOOLEAN,   0x0E0F)
  399. #define PR_SPOOLER_STATUS                           PROP_TAG( PT_LONG,      0x0E10)
  400. #define PR_TRANSPORT_STATUS                         PROP_TAG( PT_LONG,      0x0E11)
  401. #define PR_MESSAGE_RECIPIENTS                       PROP_TAG( PT_OBJECT,    0x0E12)
  402. #define PR_MESSAGE_ATTACHMENTS                      PROP_TAG( PT_OBJECT,    0x0E13)
  403. #define PR_SUBMIT_FLAGS                             PROP_TAG( PT_LONG,      0x0E14)
  404. #define PR_RECIPIENT_STATUS                         PROP_TAG( PT_LONG,      0x0E15)
  405. #define PR_TRANSPORT_KEY                            PROP_TAG( PT_LONG,      0x0E16)
  406. #define PR_MSG_STATUS                               PROP_TAG( PT_LONG,      0x0E17)
  407. #define PR_MESSAGE_DOWNLOAD_TIME                    PROP_TAG( PT_LONG,      0x0E18)
  408. #define PR_CREATION_VERSION                         PROP_TAG( PT_I8,        0x0E19)
  409. #define PR_MODIFY_VERSION                           PROP_TAG( PT_I8,        0x0E1A)
  410. #define PR_HASATTACH                                PROP_TAG( PT_BOOLEAN,   0x0E1B)
  411. #define PR_BODY_CRC                                 PROP_TAG( PT_LONG,      0x0E1C)
  412. #define PR_NORMALIZED_SUBJECT                       PROP_TAG( PT_TSTRING,   0x0E1D)
  413. #define PR_NORMALIZED_SUBJECT_W                     PROP_TAG( PT_UNICODE,   0x0E1D)
  414. #define PR_NORMALIZED_SUBJECT_A                     PROP_TAG( PT_STRING8,   0x0E1D)
  415. #define PR_RTF_IN_SYNC                              PROP_TAG( PT_BOOLEAN,   0x0E1F)
  416. #define PR_ATTACH_SIZE                              PROP_TAG( PT_LONG,      0x0E20)
  417. #define PR_ATTACH_NUM                               PROP_TAG( PT_LONG,      0x0E21)
  418. #define PR_PREPROCESS                               PROP_TAG( PT_BOOLEAN,   0x0E22)
  419.  
  420. /* PR_ORIGINAL_DISPLAY_TO, _CC, and _BCC moved to transmittible range 03/09/95 */
  421.  
  422. #define PR_ORIGINATING_MTA_CERTIFICATE              PROP_TAG( PT_BINARY,    0x0E25)
  423. #define PR_PROOF_OF_SUBMISSION                      PROP_TAG( PT_BINARY,    0x0E26)
  424.  
  425.  
  426. /*
  427.  * The range of non-message and non-recipient property IDs (0x3000 - 0x3FFF) is
  428.  * further broken down into ranges to make assigning new property IDs easier.
  429.  *
  430.  *  From    To      Kind of property
  431.  *  --------------------------------
  432.  *  3000    32FF    MAPI_defined common property
  433.  *  3200    33FF    MAPI_defined form property
  434.  *  3400    35FF    MAPI_defined message store property
  435.  *  3600    36FF    MAPI_defined Folder or AB Container property
  436.  *  3700    38FF    MAPI_defined attachment property
  437.  *  3900    39FF    MAPI_defined address book property
  438.  *  3A00    3BFF    MAPI_defined mailuser property
  439.  *  3C00    3CFF    MAPI_defined DistList property
  440.  *  3D00    3DFF    MAPI_defined Profile Section property
  441.  *  3E00    3EFF    MAPI_defined Status property
  442.  *  3F00    3FFF    MAPI_defined display table property
  443.  */
  444.  
  445. /*
  446.  *  Properties common to numerous MAPI objects.
  447.  *
  448.  *  Those properties that can appear on messages are in the
  449.  *  non-transmittable range for messages. They start at the high
  450.  *  end of that range and work down.
  451.  *
  452.  *  Properties that never appear on messages are defined in the common
  453.  *  property range (see above).
  454.  */
  455.  
  456. /*
  457.  * properties that are common to multiple objects (including message objects)
  458.  * -- these ids are in the non-transmittable range
  459.  */
  460.  
  461. #define PR_ENTRYID                                  PROP_TAG( PT_BINARY,    0x0FFF)
  462. #define PR_OBJECT_TYPE                              PROP_TAG( PT_LONG,      0x0FFE)
  463. #define PR_ICON                                     PROP_TAG( PT_BINARY,    0x0FFD)
  464. #define PR_MINI_ICON                                PROP_TAG( PT_BINARY,    0x0FFC)
  465. #define PR_STORE_ENTRYID                            PROP_TAG( PT_BINARY,    0x0FFB)
  466. #define PR_STORE_RECORD_KEY                         PROP_TAG( PT_BINARY,    0x0FFA)
  467. #define PR_RECORD_KEY                               PROP_TAG( PT_BINARY,    0x0FF9)
  468. #define PR_MAPPING_SIGNATURE                        PROP_TAG( PT_BINARY,    0x0FF8)
  469. #define PR_ACCESS_LEVEL                             PROP_TAG( PT_LONG,      0x0FF7)
  470. #define PR_INSTANCE_KEY                             PROP_TAG( PT_BINARY,    0x0FF6)
  471. #define PR_ROW_TYPE                                 PROP_TAG( PT_LONG,      0x0FF5)
  472. #define PR_ACCESS                                   PROP_TAG( PT_LONG,      0x0FF4)
  473.  
  474. /*
  475.  * properties that are common to multiple objects (usually not including message objects)
  476.  * -- these ids are in the transmittable range
  477.  */
  478.  
  479. #define PR_ROWID                                    PROP_TAG( PT_LONG,      0x3000)
  480. #define PR_DISPLAY_NAME                             PROP_TAG( PT_TSTRING,   0x3001)
  481. #define PR_DISPLAY_NAME_W                           PROP_TAG( PT_UNICODE,   0x3001)
  482. #define PR_DISPLAY_NAME_A                           PROP_TAG( PT_STRING8,   0x3001)
  483. #define PR_ADDRTYPE                                 PROP_TAG( PT_TSTRING,   0x3002)
  484. #define PR_ADDRTYPE_W                               PROP_TAG( PT_UNICODE,   0x3002)
  485. #define PR_ADDRTYPE_A                               PROP_TAG( PT_STRING8,   0x3002)
  486. #define PR_EMAIL_ADDRESS                            PROP_TAG( PT_TSTRING,   0x3003)
  487. #define PR_EMAIL_ADDRESS_W                          PROP_TAG( PT_UNICODE,   0x3003)
  488. #define PR_EMAIL_ADDRESS_A                          PROP_TAG( PT_STRING8,   0x3003)
  489. #define PR_COMMENT                                  PROP_TAG( PT_TSTRING,   0x3004)
  490. #define PR_COMMENT_W                                PROP_TAG( PT_UNICODE,   0x3004)
  491. #define PR_COMMENT_A                                PROP_TAG( PT_STRING8,   0x3004)
  492. #define PR_DEPTH                                    PROP_TAG( PT_LONG,      0x3005)
  493. #define PR_PROVIDER_DISPLAY                         PROP_TAG( PT_TSTRING,   0x3006)
  494. #define PR_PROVIDER_DISPLAY_W                       PROP_TAG( PT_UNICODE,   0x3006)
  495. #define PR_PROVIDER_DISPLAY_A                       PROP_TAG( PT_STRING8,   0x3006)
  496. #define PR_CREATION_TIME                            PROP_TAG( PT_SYSTIME,   0x3007)
  497. #define PR_LAST_MODIFICATION_TIME                   PROP_TAG( PT_SYSTIME,   0x3008)
  498. #define PR_RESOURCE_FLAGS                           PROP_TAG( PT_LONG,      0x3009)
  499. #define PR_PROVIDER_DLL_NAME                        PROP_TAG( PT_TSTRING,   0x300A)
  500. #define PR_PROVIDER_DLL_NAME_W                      PROP_TAG( PT_UNICODE,   0x300A)
  501. #define PR_PROVIDER_DLL_NAME_A                      PROP_TAG( PT_STRING8,   0x300A)
  502. #define PR_SEARCH_KEY                               PROP_TAG( PT_BINARY,    0x300B)
  503. #define PR_PROVIDER_UID                             PROP_TAG( PT_BINARY,    0x300C)
  504. #define PR_PROVIDER_ORDINAL                         PROP_TAG( PT_LONG,      0x300D)
  505.  
  506. /*
  507.  *  MAPI Form properties
  508.  */
  509. #define PR_FORM_VERSION                             PROP_TAG(PT_TSTRING,    0x3301)
  510. #define PR_FORM_VERSION_W                           PROP_TAG(PT_UNICODE,    0x3301)
  511. #define PR_FORM_VERSION_A                           PROP_TAG(PT_STRING8,    0x3301)
  512. #define PR_FORM_CLSID                               PROP_TAG(PT_CLSID,      0x3302)
  513. #define PR_FORM_CONTACT_NAME                        PROP_TAG(PT_TSTRING,    0x3303)
  514. #define PR_FORM_CONTACT_NAME_W                      PROP_TAG(PT_UNICODE,    0x3303)
  515. #define PR_FORM_CONTACT_NAME_A                      PROP_TAG(PT_STRING8,    0x3303)
  516. #define PR_FORM_CATEGORY                            PROP_TAG(PT_TSTRING,    0x3304)
  517. #define PR_FORM_CATEGORY_W                          PROP_TAG(PT_UNICODE,    0x3304)
  518. #define PR_FORM_CATEGORY_A                          PROP_TAG(PT_STRING8,    0x3304)
  519. #define PR_FORM_CATEGORY_SUB                        PROP_TAG(PT_TSTRING,    0x3305)
  520. #define PR_FORM_CATEGORY_SUB_W                      PROP_TAG(PT_UNICODE,    0x3305)
  521. #define PR_FORM_CATEGORY_SUB_A                      PROP_TAG(PT_STRING8,    0x3305)
  522. #define PR_FORM_HOST_MAP                            PROP_TAG(PT_MV_LONG,    0x3306)
  523. #define PR_FORM_HIDDEN                              PROP_TAG(PT_BOOLEAN,    0x3307)
  524. #define PR_FORM_DESIGNER_NAME                       PROP_TAG(PT_TSTRING,    0x3308)
  525. #define PR_FORM_DESIGNER_NAME_W                     PROP_TAG(PT_UNICODE,    0x3308)
  526. #define PR_FORM_DESIGNER_NAME_A                     PROP_TAG(PT_STRING8,    0x3308)
  527. #define PR_FORM_DESIGNER_GUID                       PROP_TAG(PT_CLSID,      0x3309)
  528. #define PR_FORM_MESSAGE_BEHAVIOR                    PROP_TAG(PT_LONG,       0x330A)
  529.  
  530. /*
  531.  *  Message store properties
  532.  */
  533.  
  534. #define PR_DEFAULT_STORE                            PROP_TAG( PT_BOOLEAN,   0x3400)
  535. #define PR_STORE_SUPPORT_MASK                       PROP_TAG( PT_LONG,      0x340D)
  536. #define PR_STORE_STATE                              PROP_TAG( PT_LONG,      0x340E)
  537.  
  538. #define PR_IPM_SUBTREE_SEARCH_KEY                   PROP_TAG( PT_BINARY,    0x3410)
  539. #define PR_IPM_OUTBOX_SEARCH_KEY                    PROP_TAG( PT_BINARY,    0x3411)
  540. #define PR_IPM_WASTEBASKET_SEARCH_KEY               PROP_TAG( PT_BINARY,    0x3412)
  541. #define PR_IPM_SENTMAIL_SEARCH_KEY                  PROP_TAG( PT_BINARY,    0x3413)
  542. #define PR_MDB_PROVIDER                             PROP_TAG( PT_BINARY,    0x3414)
  543. #define PR_RECEIVE_FOLDER_SETTINGS                  PROP_TAG( PT_OBJECT,    0x3415)
  544.  
  545. #define PR_VALID_FOLDER_MASK                        PROP_TAG( PT_LONG,      0x35DF)
  546. #define PR_IPM_SUBTREE_ENTRYID                      PROP_TAG( PT_BINARY,    0x35E0)
  547.  
  548. #define PR_IPM_OUTBOX_ENTRYID                       PROP_TAG( PT_BINARY,    0x35E2)
  549. #define PR_IPM_WASTEBASKET_ENTRYID                  PROP_TAG( PT_BINARY,    0x35E3)
  550. #define PR_IPM_SENTMAIL_ENTRYID                     PROP_TAG( PT_BINARY,    0x35E4)
  551. #define PR_VIEWS_ENTRYID                            PROP_TAG( PT_BINARY,    0x35E5)
  552. #define PR_COMMON_VIEWS_ENTRYID                     PROP_TAG( PT_BINARY,    0x35E6)
  553. #define PR_FINDER_ENTRYID                           PROP_TAG( PT_BINARY,    0x35E7)
  554.  
  555. /* Proptags 0x35E8-0x35FF reserved for folders "guaranteed" by PR_VALID_FOLDER_MASK */
  556.  
  557.  
  558. /*
  559.  *  Folder and AB Container properties
  560.  */
  561.  
  562. #define PR_CONTAINER_FLAGS                          PROP_TAG( PT_LONG,      0x3600)
  563. #define PR_FOLDER_TYPE                              PROP_TAG( PT_LONG,      0x3601)
  564. #define PR_CONTENT_COUNT                            PROP_TAG( PT_LONG,      0x3602)
  565. #define PR_CONTENT_UNREAD                           PROP_TAG( PT_LONG,      0x3603)
  566. #define PR_CREATE_TEMPLATES                         PROP_TAG( PT_OBJECT,    0x3604)
  567. #define PR_DETAILS_TABLE                            PROP_TAG( PT_OBJECT,    0x3605)
  568. #define PR_SEARCH                                   PROP_TAG( PT_OBJECT,    0x3607)
  569. #define PR_SELECTABLE                               PROP_TAG( PT_BOOLEAN,   0x3609)
  570. #define PR_SUBFOLDERS                               PROP_TAG( PT_BOOLEAN,   0x360A)
  571. #define PR_STATUS                                   PROP_TAG( PT_LONG,      0x360B)
  572. #define PR_ANR                                      PROP_TAG( PT_TSTRING,   0x360C)
  573. #define PR_ANR_W                                    PROP_TAG( PT_UNICODE,   0x360C)
  574. #define PR_ANR_A                                    PROP_TAG( PT_STRING8,   0x360C)
  575. #define PR_CONTENTS_SORT_ORDER                      PROP_TAG( PT_MV_LONG,   0x360D)
  576. #define PR_CONTAINER_HIERARCHY                      PROP_TAG( PT_OBJECT,    0x360E)
  577. #define PR_CONTAINER_CONTENTS                       PROP_TAG( PT_OBJECT,    0x360F)
  578. #define PR_FOLDER_ASSOCIATED_CONTENTS               PROP_TAG( PT_OBJECT,    0x3610)
  579. #define PR_DEF_CREATE_DL                            PROP_TAG( PT_BINARY,    0x3611)
  580. #define PR_DEF_CREATE_MAILUSER                      PROP_TAG( PT_BINARY,    0x3612)
  581. #define PR_CONTAINER_CLASS                          PROP_TAG( PT_TSTRING,   0x3613)
  582. #define PR_CONTAINER_CLASS_W                        PROP_TAG( PT_UNICODE,   0x3613)
  583. #define PR_CONTAINER_CLASS_A                        PROP_TAG( PT_STRING8,   0x3613)
  584. #define PR_CONTAINER_MODIFY_VERSION                 PROP_TAG( PT_I8,        0x3614)
  585. #define PR_AB_PROVIDER_ID                           PROP_TAG( PT_BINARY,    0x3615)
  586. #define PR_DEFAULT_VIEW_ENTRYID                     PROP_TAG( PT_BINARY,    0x3616)
  587. #define PR_ASSOC_CONTENT_COUNT                      PROP_TAG( PT_LONG,      0x3617)
  588.  
  589. /* Reserved 0x36C0-0x36FF */
  590.  
  591. /*
  592.  *  Attachment properties
  593.  */
  594.  
  595. #define PR_ATTACHMENT_X400_PARAMETERS               PROP_TAG( PT_BINARY,    0x3700)
  596. #define PR_ATTACH_DATA_OBJ                          PROP_TAG( PT_OBJECT,    0x3701)
  597. #define PR_ATTACH_DATA_BIN                          PROP_TAG( PT_BINARY,    0x3701)
  598. #define PR_ATTACH_ENCODING                          PROP_TAG( PT_BINARY,    0x3702)
  599. #define PR_ATTACH_EXTENSION                         PROP_TAG( PT_TSTRING,   0x3703)
  600. #define PR_ATTACH_EXTENSION_W                       PROP_TAG( PT_UNICODE,   0x3703)
  601. #define PR_ATTACH_EXTENSION_A                       PROP_TAG( PT_STRING8,   0x3703)
  602. #define PR_ATTACH_FILENAME                          PROP_TAG( PT_TSTRING,   0x3704)
  603. #define PR_ATTACH_FILENAME_W                        PROP_TAG( PT_UNICODE,   0x3704)
  604. #define PR_ATTACH_FILENAME_A                        PROP_TAG( PT_STRING8,   0x3704)
  605. #define PR_ATTACH_METHOD                            PROP_TAG( PT_LONG,      0x3705)
  606. #define PR_ATTACH_LONG_FILENAME                     PROP_TAG( PT_TSTRING,   0x3707)
  607. #define PR_ATTACH_LONG_FILENAME_W                   PROP_TAG( PT_UNICODE,   0x3707)
  608. #define PR_ATTACH_LONG_FILENAME_A                   PROP_TAG( PT_STRING8,   0x3707)
  609. #define PR_ATTACH_PATHNAME                          PROP_TAG( PT_TSTRING,   0x3708)
  610. #define PR_ATTACH_PATHNAME_W                        PROP_TAG( PT_UNICODE,   0x3708)
  611. #define PR_ATTACH_PATHNAME_A                        PROP_TAG( PT_STRING8,   0x3708)
  612. #define PR_ATTACH_RENDERING                         PROP_TAG( PT_BINARY,    0x3709)
  613. #define PR_ATTACH_TAG                               PROP_TAG( PT_BINARY,    0x370A)
  614. #define PR_RENDERING_POSITION                       PROP_TAG( PT_LONG,      0x370B)
  615. #define PR_ATTACH_TRANSPORT_NAME                    PROP_TAG( PT_TSTRING,   0x370C)
  616. #define PR_ATTACH_TRANSPORT_NAME_W                  PROP_TAG( PT_UNICODE,   0x370C)
  617. #define PR_ATTACH_TRANSPORT_NAME_A                  PROP_TAG( PT_STRING8,   0x370C)
  618. #define PR_ATTACH_LONG_PATHNAME                     PROP_TAG( PT_TSTRING,   0x370D)
  619. #define PR_ATTACH_LONG_PATHNAME_W                   PROP_TAG( PT_UNICODE,   0x370D)
  620. #define PR_ATTACH_LONG_PATHNAME_A                   PROP_TAG( PT_STRING8,   0x370D)
  621. #define PR_ATTACH_MIME_TAG                          PROP_TAG( PT_TSTRING,   0x370E)
  622. #define PR_ATTACH_MIME_TAG_W                        PROP_TAG( PT_UNICODE,   0x370E)
  623. #define PR_ATTACH_MIME_TAG_A                        PROP_TAG( PT_STRING8,   0x370E)
  624. #define PR_ATTACH_ADDITIONAL_INFO                   PROP_TAG( PT_BINARY,    0x370F)
  625.  
  626. /*
  627.  *  AB Object properties
  628.  */
  629.  
  630. #define PR_DISPLAY_TYPE                             PROP_TAG( PT_LONG,      0x3900)
  631. #define PR_TEMPLATEID                               PROP_TAG( PT_BINARY,    0x3902)
  632. #define PR_PRIMARY_CAPABILITY                       PROP_TAG( PT_BINARY,    0x3904)
  633.  
  634.  
  635. /*
  636.  *  Mail user properties
  637.  */
  638. #define PR_7BIT_DISPLAY_NAME                        PROP_TAG( PT_STRING8,   0x39FF)
  639. #define PR_ACCOUNT                                  PROP_TAG( PT_TSTRING,   0x3A00)
  640. #define PR_ACCOUNT_W                                PROP_TAG( PT_UNICODE,   0x3A00)
  641. #define PR_ACCOUNT_A                                PROP_TAG( PT_STRING8,   0x3A00)
  642. #define PR_ALTERNATE_RECIPIENT                      PROP_TAG( PT_BINARY,    0x3A01)
  643. #define PR_CALLBACK_TELEPHONE_NUMBER                PROP_TAG( PT_TSTRING,   0x3A02)
  644. #define PR_CALLBACK_TELEPHONE_NUMBER_W              PROP_TAG( PT_UNICODE,   0x3A02)
  645. #define PR_CALLBACK_TELEPHONE_NUMBER_A              PROP_TAG( PT_STRING8,   0x3A02)
  646. #define PR_CONVERSION_PROHIBITED                    PROP_TAG( PT_BOOLEAN,   0x3A03)
  647. #define PR_DISCLOSE_RECIPIENTS                      PROP_TAG( PT_BOOLEAN,   0x3A04)
  648. #define PR_GENERATION                               PROP_TAG( PT_TSTRING,   0x3A05)
  649. #define PR_GENERATION_W                             PROP_TAG( PT_UNICODE,   0x3A05)
  650. #define PR_GENERATION_A                             PROP_TAG( PT_STRING8,   0x3A05)
  651. #define PR_GIVEN_NAME                               PROP_TAG( PT_TSTRING,   0x3A06)
  652. #define PR_GIVEN_NAME_W                             PROP_TAG( PT_UNICODE,   0x3A06)
  653. #define PR_GIVEN_NAME_A                             PROP_TAG( PT_STRING8,   0x3A06)
  654. #define PR_GOVERNMENT_ID_NUMBER                     PROP_TAG( PT_TSTRING,   0x3A07)
  655. #define PR_GOVERNMENT_ID_NUMBER_W                   PROP_TAG( PT_UNICODE,   0x3A07)
  656. #define PR_GOVERNMENT_ID_NUMBER_A                   PROP_TAG( PT_STRING8,   0x3A07)
  657. #define PR_BUSINESS_TELEPHONE_NUMBER                PROP_TAG( PT_TSTRING,   0x3A08)
  658. #define PR_BUSINESS_TELEPHONE_NUMBER_W              PROP_TAG( PT_UNICODE,   0x3A08)
  659. #define PR_BUSINESS_TELEPHONE_NUMBER_A              PROP_TAG( PT_STRING8,   0x3A08)
  660. #define PR_OFFICE_TELEPHONE_NUMBER                  PR_BUSINESS_TELEPHONE_NUMBER
  661. #define PR_OFFICE_TELEPHONE_NUMBER_W                PR_BUSINESS_TELEPHONE_NUMBER_W
  662. #define PR_OFFICE_TELEPHONE_NUMBER_A                PR_BUSINESS_TELEPHONE_NUMBER_A
  663. #define PR_HOME_TELEPHONE_NUMBER                    PROP_TAG( PT_TSTRING,   0x3A09)
  664. #define PR_HOME_TELEPHONE_NUMBER_W                  PROP_TAG( PT_UNICODE,   0x3A09)
  665. #define PR_HOME_TELEPHONE_NUMBER_A                  PROP_TAG( PT_STRING8,   0x3A09)
  666. #define PR_INITIALS                                 PROP_TAG( PT_TSTRING,   0x3A0A)
  667. #define PR_INITIALS_W                               PROP_TAG( PT_UNICODE,   0x3A0A)
  668. #define PR_INITIALS_A                               PROP_TAG( PT_STRING8,   0x3A0A)
  669. #define PR_KEYWORD                                  PROP_TAG( PT_TSTRING,   0x3A0B)
  670. #define PR_KEYWORD_W                                PROP_TAG( PT_UNICODE,   0x3A0B)
  671. #define PR_KEYWORD_A                                PROP_TAG( PT_STRING8,   0x3A0B)
  672. #define PR_LANGUAGE                                 PROP_TAG( PT_TSTRING,   0x3A0C)
  673. #define PR_LANGUAGE_W                               PROP_TAG( PT_UNICODE,   0x3A0C)
  674. #define PR_LANGUAGE_A                               PROP_TAG( PT_STRING8,   0x3A0C)
  675. #define PR_LOCATION                                 PROP_TAG( PT_TSTRING,   0x3A0D)
  676. #define PR_LOCATION_W                               PROP_TAG( PT_UNICODE,   0x3A0D)
  677. #define PR_LOCATION_A                               PROP_TAG( PT_STRING8,   0x3A0D)
  678. #define PR_MAIL_PERMISSION                          PROP_TAG( PT_BOOLEAN,   0x3A0E)
  679. #define PR_MHS_COMMON_NAME                          PROP_TAG( PT_TSTRING,   0x3A0F)
  680. #define PR_MHS_COMMON_NAME_W                        PROP_TAG( PT_UNICODE,   0x3A0F)
  681. #define PR_MHS_COMMON_NAME_A                        PROP_TAG( PT_STRING8,   0x3A0F)
  682. #define PR_ORGANIZATIONAL_ID_NUMBER                 PROP_TAG( PT_TSTRING,   0x3A10)
  683. #define PR_ORGANIZATIONAL_ID_NUMBER_W               PROP_TAG( PT_UNICODE,   0x3A10)
  684. #define PR_ORGANIZATIONAL_ID_NUMBER_A               PROP_TAG( PT_STRING8,   0x3A10)
  685. #define PR_SURNAME                                  PROP_TAG( PT_TSTRING,   0x3A11)
  686. #define PR_SURNAME_W                                PROP_TAG( PT_UNICODE,   0x3A11)
  687. #define PR_SURNAME_A                                PROP_TAG( PT_STRING8,   0x3A11)
  688. #define PR_ORIGINAL_ENTRYID                         PROP_TAG( PT_BINARY,    0x3A12)
  689. #define PR_ORIGINAL_DISPLAY_NAME                    PROP_TAG( PT_TSTRING,   0x3A13)
  690. #define PR_ORIGINAL_DISPLAY_NAME_W                  PROP_TAG( PT_UNICODE,   0x3A13)
  691. #define PR_ORIGINAL_DISPLAY_NAME_A                  PROP_TAG( PT_STRING8,   0x3A13)
  692. #define PR_ORIGINAL_SEARCH_KEY                      PROP_TAG( PT_BINARY,    0x3A14)
  693. #define PR_POSTAL_ADDRESS                           PROP_TAG( PT_TSTRING,   0x3A15)
  694. #define PR_POSTAL_ADDRESS_W                         PROP_TAG( PT_UNICODE,   0x3A15)
  695. #define PR_POSTAL_ADDRESS_A                         PROP_TAG( PT_STRING8,   0x3A15)
  696. #define PR_COMPANY_NAME                             PROP_TAG( PT_TSTRING,   0x3A16)
  697. #define PR_COMPANY_NAME_W                           PROP_TAG( PT_UNICODE,   0x3A16)
  698. #define PR_COMPANY_NAME_A                           PROP_TAG( PT_STRING8,   0x3A16)
  699. #define PR_TITLE                                    PROP_TAG( PT_TSTRING,   0x3A17)
  700. #define PR_TITLE_W                                  PROP_TAG( PT_UNICODE,   0x3A17)
  701. #define PR_TITLE_A                                  PROP_TAG( PT_STRING8,   0x3A17)
  702. #define PR_DEPARTMENT_NAME                          PROP_TAG( PT_TSTRING,   0x3A18)
  703. #define PR_DEPARTMENT_NAME_W                        PROP_TAG( PT_UNICODE,   0x3A18)
  704. #define PR_DEPARTMENT_NAME_A                        PROP_TAG( PT_STRING8,   0x3A18)
  705. #define PR_OFFICE_LOCATION                          PROP_TAG( PT_TSTRING,   0x3A19)
  706. #define PR_OFFICE_LOCATION_W                        PROP_TAG( PT_UNICODE,   0x3A19)
  707. #define PR_OFFICE_LOCATION_A                        PROP_TAG( PT_STRING8,   0x3A19)
  708. #define PR_PRIMARY_TELEPHONE_NUMBER                 PROP_TAG( PT_TSTRING,   0x3A1A)
  709. #define PR_PRIMARY_TELEPHONE_NUMBER_W               PROP_TAG( PT_UNICODE,   0x3A1A)
  710. #define PR_PRIMARY_TELEPHONE_NUMBER_A               PROP_TAG( PT_STRING8,   0x3A1A)
  711. #define PR_BUSINESS2_TELEPHONE_NUMBER               PROP_TAG( PT_TSTRING,   0x3A1B)
  712. #define PR_BUSINESS2_TELEPHONE_NUMBER_W             PROP_TAG( PT_UNICODE,   0x3A1B)
  713. #define PR_BUSINESS2_TELEPHONE_NUMBER_A             PROP_TAG( PT_STRING8,   0x3A1B)
  714. #define PR_OFFICE2_TELEPHONE_NUMBER                 PR_BUSINESS2_TELEPHONE_NUMBER
  715. #define PR_OFFICE2_TELEPHONE_NUMBER_W               PR_BUSINESS2_TELEPHONE_NUMBER_W
  716. #define PR_OFFICE2_TELEPHONE_NUMBER_A               PR_BUSINESS2_TELEPHONE_NUMBER_A
  717. #define PR_MOBILE_TELEPHONE_NUMBER                  PROP_TAG( PT_TSTRING,   0x3A1C)
  718. #define PR_MOBILE_TELEPHONE_NUMBER_W                PROP_TAG( PT_UNICODE,   0x3A1C)
  719. #define PR_MOBILE_TELEPHONE_NUMBER_A                PROP_TAG( PT_STRING8,   0x3A1C)
  720. #define PR_CELLULAR_TELEPHONE_NUMBER                PR_MOBILE_TELEPHONE_NUMBER
  721. #define PR_CELLULAR_TELEPHONE_NUMBER_W              PR_MOBILE_TELEPHONE_NUMBER_W
  722. #define PR_CELLULAR_TELEPHONE_NUMBER_A              PR_MOBILE_TELEPHONE_NUMBER_A
  723. #define PR_RADIO_TELEPHONE_NUMBER                   PROP_TAG( PT_TSTRING,   0x3A1D)
  724. #define PR_RADIO_TELEPHONE_NUMBER_W                 PROP_TAG( PT_UNICODE,   0x3A1D)
  725. #define PR_RADIO_TELEPHONE_NUMBER_A                 PROP_TAG( PT_STRING8,   0x3A1D)
  726. #define PR_CAR_TELEPHONE_NUMBER                     PROP_TAG( PT_TSTRING,   0x3A1E)
  727. #define PR_CAR_TELEPHONE_NUMBER_W                   PROP_TAG( PT_UNICODE,   0x3A1E)
  728. #define PR_CAR_TELEPHONE_NUMBER_A                   PROP_TAG( PT_STRING8,   0x3A1E)
  729. #define PR_OTHER_TELEPHONE_NUMBER                   PROP_TAG( PT_TSTRING,   0x3A1F)
  730. #define PR_OTHER_TELEPHONE_NUMBER_W                 PROP_TAG( PT_UNICODE,   0x3A1F)
  731. #define PR_OTHER_TELEPHONE_NUMBER_A                 PROP_TAG( PT_STRING8,   0x3A1F)
  732. #define PR_TRANSMITABLE_DISPLAY_NAME                PROP_TAG( PT_TSTRING,   0x3A20)
  733. #define PR_TRANSMITABLE_DISPLAY_NAME_W              PROP_TAG( PT_UNICODE,   0x3A20)
  734. #define PR_TRANSMITABLE_DISPLAY_NAME_A              PROP_TAG( PT_STRING8,   0x3A20)
  735. #define PR_PAGER_TELEPHONE_NUMBER                   PROP_TAG( PT_TSTRING,   0x3A21)
  736. #define PR_PAGER_TELEPHONE_NUMBER_W                 PROP_TAG( PT_UNICODE,   0x3A21)
  737. #define PR_PAGER_TELEPHONE_NUMBER_A                 PROP_TAG( PT_STRING8,   0x3A21)
  738. #define PR_BEEPER_TELEPHONE_NUMBER                  PR_PAGER_TELEPHONE_NUMBER
  739. #define PR_BEEPER_TELEPHONE_NUMBER_W                PR_PAGER_TELEPHONE_NUMBER_W
  740. #define PR_BEEPER_TELEPHONE_NUMBER_A                PR_PAGER_TELEPHONE_NUMBER_A
  741. #define PR_USER_CERTIFICATE                         PROP_TAG( PT_BINARY,    0x3A22)
  742. #define PR_PRIMARY_FAX_NUMBER                       PROP_TAG( PT_TSTRING,   0x3A23)
  743. #define PR_PRIMARY_FAX_NUMBER_W                     PROP_TAG( PT_UNICODE,   0x3A23)
  744. #define PR_PRIMARY_FAX_NUMBER_A                     PROP_TAG( PT_STRING8,   0x3A23)
  745. #define PR_BUSINESS_FAX_NUMBER                      PROP_TAG( PT_TSTRING,   0x3A24)
  746. #define PR_BUSINESS_FAX_NUMBER_W                    PROP_TAG( PT_UNICODE,   0x3A24)
  747. #define PR_BUSINESS_FAX_NUMBER_A                    PROP_TAG( PT_STRING8,   0x3A24)
  748. #define PR_HOME_FAX_NUMBER                          PROP_TAG( PT_TSTRING,   0x3A25)
  749. #define PR_HOME_FAX_NUMBER_W                        PROP_TAG( PT_UNICODE,   0x3A25)
  750. #define PR_HOME_FAX_NUMBER_A                        PROP_TAG( PT_STRING8,   0x3A25)
  751. #define PR_COUNTRY                                  PROP_TAG( PT_TSTRING,   0x3A26)
  752. #define PR_COUNTRY_W                                PROP_TAG( PT_UNICODE,   0x3A26)
  753. #define PR_COUNTRY_A                                PROP_TAG( PT_STRING8,   0x3A26)
  754. #define PR_BUSINESS_ADDRESS_COUNTRY                 PR_COUNTRY
  755. #define PR_BUSINESS_ADDRESS_COUNTRY_W               PR_COUNTRY_W
  756. #define PR_BUSINESS_ADDRESS_COUNTRY_A               PR_COUNTRY_A
  757.  
  758. #define PR_LOCALITY                                 PROP_TAG( PT_TSTRING,   0x3A27)
  759. #define PR_LOCALITY_W                               PROP_TAG( PT_UNICODE,   0x3A27)
  760. #define PR_LOCALITY_A                               PROP_TAG( PT_STRING8,   0x3A27)
  761. #define PR_BUSINESS_ADDRESS_CITY                    PR_LOCALITY
  762. #define PR_BUSINESS_ADDRESS_CITY_W                  PR_LOCALITY_W
  763. #define PR_BUSINESS_ADDRESS_CITY_A                  PR_LOCALITY_A
  764.  
  765. #define PR_STATE_OR_PROVINCE                        PROP_TAG( PT_TSTRING,   0x3A28)
  766. #define PR_STATE_OR_PROVINCE_W                      PROP_TAG( PT_UNICODE,   0x3A28)
  767. #define PR_STATE_OR_PROVINCE_A                      PROP_TAG( PT_STRING8,   0x3A28)
  768. #define PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE       PR_STATE_OR_PROVINCE
  769. #define PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE_W     PR_STATE_OR_PROVINCE_W
  770. #define PR_BUSINESS_ADDRESS_STATE_OR_PROVINCE_A     PR_STATE_OR_PROVINCE_A
  771.  
  772. #define PR_STREET_ADDRESS                           PROP_TAG( PT_TSTRING,   0x3A29)
  773. #define PR_STREET_ADDRESS_W                         PROP_TAG( PT_UNICODE,   0x3A29)
  774. #define PR_STREET_ADDRESS_A                         PROP_TAG( PT_STRING8,   0x3A29)
  775. #define PR_BUSINESS_ADDRESS_STREET                  PR_STREET_ADDRESS
  776. #define PR_BUSINESS_ADDRESS_STREET_W                PR_STREET_ADDRESS_W
  777. #define PR_BUSINESS_ADDRESS_STREET_A                PR_STREET_ADDRESS_A
  778.  
  779. #define PR_POSTAL_CODE                              PROP_TAG( PT_TSTRING,   0x3A2A)
  780. #define PR_POSTAL_CODE_W                            PROP_TAG( PT_UNICODE,   0x3A2A)
  781. #define PR_POSTAL_CODE_A                            PROP_TAG( PT_STRING8,   0x3A2A)
  782. #define PR_BUSINESS_ADDRESS_POSTAL_CODE             PR_POSTAL_CODE
  783. #define PR_BUSINESS_ADDRESS_POSTAL_CODE_W           PR_POSTAL_CODE_W
  784. #define PR_BUSINESS_ADDRESS_POSTAL_CODE_A           PR_POSTAL_CODE_A
  785.  
  786.  
  787. #define PR_POST_OFFICE_BOX                          PROP_TAG( PT_TSTRING,   0x3A2B)
  788. #define PR_POST_OFFICE_BOX_W                        PROP_TAG( PT_UNICODE,   0x3A2B)
  789. #define PR_POST_OFFICE_BOX_A                        PROP_TAG( PT_STRING8,   0x3A2B)
  790. #define PR_BUSINESS_ADDRESS_POST_OFFICE_BOX         PR_POST_OFFICE_BOX
  791. #define PR_BUSINESS_ADDRESS_POST_OFFICE_BOX_W       PR_POST_OFFICE_BOX_W
  792. #define PR_BUSINESS_ADDRESS_POST_OFFICE_BOX_A       PR_POST_OFFICE_BOX_A
  793.  
  794.  
  795. #define PR_TELEX_NUMBER                             PROP_TAG( PT_TSTRING,   0x3A2C)
  796. #define PR_TELEX_NUMBER_W                           PROP_TAG( PT_UNICODE,   0x3A2C)
  797. #define PR_TELEX_NUMBER_A                           PROP_TAG( PT_STRING8,   0x3A2C)
  798. #define PR_ISDN_NUMBER                              PROP_TAG( PT_TSTRING,   0x3A2D)
  799. #define PR_ISDN_NUMBER_W                            PROP_TAG( PT_UNICODE,   0x3A2D)
  800. #define PR_ISDN_NUMBER_A                            PROP_TAG( PT_STRING8,   0x3A2D)
  801. #define PR_ASSISTANT_TELEPHONE_NUMBER               PROP_TAG( PT_TSTRING,   0x3A2E)
  802. #define PR_ASSISTANT_TELEPHONE_NUMBER_W             PROP_TAG( PT_UNICODE,   0x3A2E)
  803. #define PR_ASSISTANT_TELEPHONE_NUMBER_A             PROP_TAG( PT_STRING8,   0x3A2E)
  804. #define PR_HOME2_TELEPHONE_NUMBER                   PROP_TAG( PT_TSTRING,   0x3A2F)
  805. #define PR_HOME2_TELEPHONE_NUMBER_W                 PROP_TAG( PT_UNICODE,   0x3A2F)
  806. #define PR_HOME2_TELEPHONE_NUMBER_A                 PROP_TAG( PT_STRING8,   0x3A2F)
  807. #define PR_ASSISTANT                                PROP_TAG( PT_TSTRING,   0x3A30)
  808. #define PR_ASSISTANT_W                              PROP_TAG( PT_UNICODE,   0x3A30)
  809. #define PR_ASSISTANT_A                              PROP_TAG( PT_STRING8,   0x3A30)
  810. #define PR_SEND_RICH_INFO                           PROP_TAG( PT_BOOLEAN,   0x3A40)
  811.  
  812. #define PR_WEDDING_ANNIVERSARY                      PROP_TAG( PT_SYSTIME, 0x3A41)
  813. #define PR_BIRTHDAY                                 PROP_TAG( PT_SYSTIME, 0x3A42)
  814.  
  815.  
  816. #define PR_HOBBIES                                  PROP_TAG( PT_TSTRING, 0x3A43)
  817. #define PR_HOBBIES_W                                PROP_TAG( PT_UNICODE, 0x3A43)
  818. #define PR_HOBBIES_A                                PROP_TAG( PT_STRING8, 0x3A43)
  819.  
  820. #define PR_MIDDLE_NAME                              PROP_TAG( PT_TSTRING, 0x3A44)
  821. #define PR_MIDDLE_NAME_W                            PROP_TAG( PT_UNICODE, 0x3A44)
  822. #define PR_MIDDLE_NAME_A                            PROP_TAG( PT_STRING8, 0x3A44)
  823.  
  824. #define PR_DISPLAY_NAME_PREFIX                      PROP_TAG( PT_TSTRING, 0x3A45)
  825. #define PR_DISPLAY_NAME_PREFIX_W                    PROP_TAG( PT_UNICODE, 0x3A45)
  826. #define PR_DISPLAY_NAME_PREFIX_A                    PROP_TAG( PT_STRING8, 0x3A45)
  827.  
  828. #define PR_PROFESSION                               PROP_TAG( PT_TSTRING, 0x3A46)
  829. #define PR_PROFESSION_W                             PROP_TAG( PT_UNICODE, 0x3A46)
  830. #define PR_PROFESSION_A                             PROP_TAG( PT_STRING8, 0x3A46)
  831.  
  832. #define PR_PREFERRED_BY_NAME                        PROP_TAG( PT_TSTRING, 0x3A47)
  833. #define PR_PREFERRED_BY_NAME_W                      PROP_TAG( PT_UNICODE, 0x3A47)
  834. #define PR_PREFERRED_BY_NAME_A                      PROP_TAG( PT_STRING8, 0x3A47)
  835.  
  836. #define PR_SPOUSE_NAME                              PROP_TAG( PT_TSTRING, 0x3A48)
  837. #define PR_SPOUSE_NAME_W                            PROP_TAG( PT_UNICODE, 0x3A48)
  838. #define PR_SPOUSE_NAME_A                            PROP_TAG( PT_STRING8, 0x3A48)
  839.  
  840. #define PR_COMPUTER_NETWORK_NAME                    PROP_TAG( PT_TSTRING, 0x3A49)
  841. #define PR_COMPUTER_NETWORK_NAME_W                  PROP_TAG( PT_UNICODE, 0x3A49)
  842. #define PR_COMPUTER_NETWORK_NAME_A                  PROP_TAG( PT_STRING8, 0x3A49)
  843.  
  844. #define PR_CUSTOMER_ID                              PROP_TAG( PT_TSTRING, 0x3A4A)
  845. #define PR_CUSTOMER_ID_W                            PROP_TAG( PT_UNICODE, 0x3A4A)
  846. #define PR_CUSTOMER_ID_A                            PROP_TAG( PT_STRING8, 0x3A4A)
  847.  
  848. #define PR_TTYTDD_PHONE_NUMBER                      PROP_TAG( PT_TSTRING, 0x3A4B)
  849. #define PR_TTYTDD_PHONE_NUMBER_W                    PROP_TAG( PT_UNICODE, 0x3A4B)
  850. #define PR_TTYTDD_PHONE_NUMBER_A                    PROP_TAG( PT_STRING8, 0x3A4B)
  851.  
  852. #define PR_FTP_SITE                                 PROP_TAG( PT_TSTRING, 0x3A4C)
  853. #define PR_FTP_SITE_W                               PROP_TAG( PT_UNICODE, 0x3A4C)
  854. #define PR_FTP_SITE_A                               PROP_TAG( PT_STRING8, 0x3A4C)
  855.  
  856. #define PR_GENDER                                   PROP_TAG( PT_SHORT, 0x3A4D)
  857.  
  858. #define PR_MANAGER_NAME                             PROP_TAG( PT_TSTRING, 0x3A4E)
  859. #define PR_MANAGER_NAME_W                           PROP_TAG( PT_UNICODE, 0x3A4E)
  860. #define PR_MANAGER_NAME_A                           PROP_TAG( PT_STRING8, 0x3A4E)
  861.  
  862. #define PR_NICKNAME                                 PROP_TAG( PT_TSTRING, 0x3A4F)
  863. #define PR_NICKNAME_W                               PROP_TAG( PT_UNICODE, 0x3A4F)
  864. #define PR_NICKNAME_A                               PROP_TAG( PT_STRING8, 0x3A4F)
  865.  
  866. #define PR_PERSONAL_HOME_PAGE                       PROP_TAG( PT_TSTRING, 0x3A50)
  867. #define PR_PERSONAL_HOME_PAGE_W                     PROP_TAG( PT_UNICODE, 0x3A50)
  868. #define PR_PERSONAL_HOME_PAGE_A                     PROP_TAG( PT_STRING8, 0x3A50)
  869.  
  870.  
  871. #define PR_BUSINESS_HOME_PAGE                       PROP_TAG( PT_TSTRING, 0x3A51)
  872. #define PR_BUSINESS_HOME_PAGE_W                     PROP_TAG( PT_UNICODE, 0x3A51)
  873. #define PR_BUSINESS_HOME_PAGE_A                     PROP_TAG( PT_STRING8, 0x3A51)
  874.  
  875. #define PR_CONTACT_VERSION                          PROP_TAG( PT_CLSID, 0x3A52)
  876. #define PR_CONTACT_ENTRYIDS                         PROP_TAG( PT_MV_BINARY, 0x3A53)
  877.  
  878. #define PR_CONTACT_ADDRTYPES                        PROP_TAG( PT_MV_TSTRING, 0x3A54)
  879. #define PR_CONTACT_ADDRTYPES_W                      PROP_TAG( PT_MV_UNICODE, 0x3A54)
  880. #define PR_CONTACT_ADDRTYPES_A                      PROP_TAG( PT_MV_STRING8, 0x3A54)
  881.  
  882. #define PR_CONTACT_DEFAULT_ADDRESS_INDEX            PROP_TAG( PT_LONG, 0x3A55)
  883.  
  884. #define PR_CONTACT_EMAIL_ADDRESSES                  PROP_TAG( PT_MV_TSTRING, 0x3A56)
  885. #define PR_CONTACT_EMAIL_ADDRESSES_W                PROP_TAG( PT_MV_UNICODE, 0x3A56)
  886. #define PR_CONTACT_EMAIL_ADDRESSES_A                PROP_TAG( PT_MV_STRING8, 0x3A56)
  887.  
  888.  
  889. #define PR_COMPANY_MAIN_PHONE_NUMBER                PROP_TAG( PT_TSTRING, 0x3A57)
  890. #define PR_COMPANY_MAIN_PHONE_NUMBER_W              PROP_TAG( PT_UNICODE, 0x3A57)
  891. #define PR_COMPANY_MAIN_PHONE_NUMBER_A              PROP_TAG( PT_STRING8, 0x3A57)
  892.  
  893. #define PR_CHILDRENS_NAMES                          PROP_TAG( PT_MV_TSTRING, 0x3A58)
  894. #define PR_CHILDRENS_NAMES_W                        PROP_TAG( PT_MV_UNICODE, 0x3A58)
  895. #define PR_CHILDRENS_NAMES_A                        PROP_TAG( PT_MV_STRING8, 0x3A58)
  896.  
  897.  
  898.  
  899. #define PR_HOME_ADDRESS_CITY                        PROP_TAG( PT_TSTRING, 0x3A59)
  900. #define PR_HOME_ADDRESS_CITY_W                      PROP_TAG( PT_UNICODE, 0x3A59)
  901. #define PR_HOME_ADDRESS_CITY_A                      PROP_TAG( PT_STRING8, 0x3A59)
  902.  
  903. #define PR_HOME_ADDRESS_COUNTRY                     PROP_TAG( PT_TSTRING, 0x3A5A)
  904. #define PR_HOME_ADDRESS_COUNTRY_W                   PROP_TAG( PT_UNICODE, 0x3A5A)
  905. #define PR_HOME_ADDRESS_COUNTRY_A                   PROP_TAG( PT_STRING8, 0x3A5A)
  906.  
  907. #define PR_HOME_ADDRESS_POSTAL_CODE                 PROP_TAG( PT_TSTRING, 0x3A5B)
  908. #define PR_HOME_ADDRESS_POSTAL_CODE_W               PROP_TAG( PT_UNICODE, 0x3A5B)
  909. #define PR_HOME_ADDRESS_POSTAL_CODE_A               PROP_TAG( PT_STRING8, 0x3A5B)
  910.  
  911. #define PR_HOME_ADDRESS_STATE_OR_PROVINCE           PROP_TAG( PT_TSTRING, 0x3A5C)
  912. #define PR_HOME_ADDRESS_STATE_OR_PROVINCE_W         PROP_TAG( PT_UNICODE, 0x3A5C)
  913. #define PR_HOME_ADDRESS_STATE_OR_PROVINCE_A         PROP_TAG( PT_STRING8, 0x3A5C)
  914.  
  915. #define PR_HOME_ADDRESS_STREET                      PROP_TAG( PT_TSTRING, 0x3A5D)
  916. #define PR_HOME_ADDRESS_STREET_W                    PROP_TAG( PT_UNICODE, 0x3A5D)
  917. #define PR_HOME_ADDRESS_STREET_A                    PROP_TAG( PT_STRING8, 0x3A5D)
  918.  
  919. #define PR_HOME_ADDRESS_POST_OFFICE_BOX             PROP_TAG( PT_TSTRING, 0x3A5E)
  920. #define PR_HOME_ADDRESS_POST_OFFICE_BOX_W           PROP_TAG( PT_UNICODE, 0x3A5E)
  921. #define PR_HOME_ADDRESS_POST_OFFICE_BOX_A           PROP_TAG( PT_STRING8, 0x3A5E)
  922.  
  923. #define PR_OTHER_ADDRESS_CITY                       PROP_TAG( PT_TSTRING, 0x3A5F)
  924. #define PR_OTHER_ADDRESS_CITY_W                     PROP_TAG( PT_UNICODE, 0x3A5F)
  925. #define PR_OTHER_ADDRESS_CITY_A                     PROP_TAG( PT_STRING8, 0x3A5F)
  926.  
  927. #define PR_OTHER_ADDRESS_COUNTRY                    PROP_TAG( PT_TSTRING, 0x3A60)
  928. #define PR_OTHER_ADDRESS_COUNTRY_W                  PROP_TAG( PT_UNICODE, 0x3A60)
  929. #define PR_OTHER_ADDRESS_COUNTRY_A                  PROP_TAG( PT_STRING8, 0x3A60)
  930.  
  931. #define PR_OTHER_ADDRESS_POSTAL_CODE                PROP_TAG( PT_TSTRING, 0x3A61)
  932. #define PR_OTHER_ADDRESS_POSTAL_CODE_W              PROP_TAG( PT_UNICODE, 0x3A61)
  933. #define PR_OTHER_ADDRESS_POSTAL_CODE_A              PROP_TAG( PT_STRING8, 0x3A61)
  934.  
  935. #define PR_OTHER_ADDRESS_STATE_OR_PROVINCE          PROP_TAG( PT_TSTRING, 0x3A62)
  936. #define PR_OTHER_ADDRESS_STATE_OR_PROVINCE_W        PROP_TAG( PT_UNICODE, 0x3A62)
  937. #define PR_OTHER_ADDRESS_STATE_OR_PROVINCE_A        PROP_TAG( PT_STRING8, 0x3A62)
  938.  
  939. #define PR_OTHER_ADDRESS_STREET                     PROP_TAG( PT_TSTRING, 0x3A63)
  940. #define PR_OTHER_ADDRESS_STREET_W                   PROP_TAG( PT_UNICODE, 0x3A63)
  941. #define PR_OTHER_ADDRESS_STREET_A                   PROP_TAG( PT_STRING8, 0x3A63)
  942.  
  943. #define PR_OTHER_ADDRESS_POST_OFFICE_BOX            PROP_TAG( PT_TSTRING, 0x3A64)
  944. #define PR_OTHER_ADDRESS_POST_OFFICE_BOX_W          PROP_TAG( PT_UNICODE, 0x3A64)
  945. #define PR_OTHER_ADDRESS_POST_OFFICE_BOX_A          PROP_TAG( PT_STRING8, 0x3A64)
  946.  
  947.  
  948. /*
  949.  *  Profile section properties
  950.  */
  951.  
  952. #define PR_STORE_PROVIDERS                          PROP_TAG( PT_BINARY,    0x3D00)
  953. #define PR_AB_PROVIDERS                             PROP_TAG( PT_BINARY,    0x3D01)
  954. #define PR_TRANSPORT_PROVIDERS                      PROP_TAG( PT_BINARY,    0x3D02)
  955.  
  956. #define PR_DEFAULT_PROFILE                          PROP_TAG( PT_BOOLEAN,   0x3D04)
  957. #define PR_AB_SEARCH_PATH                           PROP_TAG( PT_MV_BINARY, 0x3D05)
  958. #define PR_AB_DEFAULT_DIR                           PROP_TAG( PT_BINARY,    0x3D06)
  959. #define PR_AB_DEFAULT_PAB                           PROP_TAG( PT_BINARY,    0x3D07)
  960.  
  961. #define PR_FILTERING_HOOKS                          PROP_TAG( PT_BINARY,    0x3D08)
  962. #define PR_SERVICE_NAME                             PROP_TAG( PT_TSTRING,   0x3D09)
  963. #define PR_SERVICE_NAME_W                           PROP_TAG( PT_UNICODE,   0x3D09)
  964. #define PR_SERVICE_NAME_A                           PROP_TAG( PT_STRING8,   0x3D09)
  965. #define PR_SERVICE_DLL_NAME                         PROP_TAG( PT_TSTRING,   0x3D0A)
  966. #define PR_SERVICE_DLL_NAME_W                       PROP_TAG( PT_UNICODE,   0x3D0A)
  967. #define PR_SERVICE_DLL_NAME_A                       PROP_TAG( PT_STRING8,   0x3D0A)
  968. #define PR_SERVICE_ENTRY_NAME                       PROP_TAG( PT_STRING8,   0x3D0B)
  969. #define PR_SERVICE_UID                              PROP_TAG( PT_BINARY,    0x3D0C)
  970. #define PR_SERVICE_EXTRA_UIDS                       PROP_TAG( PT_BINARY,    0x3D0D)
  971. #define PR_SERVICES                                 PROP_TAG( PT_BINARY,    0x3D0E)
  972. #define PR_SERVICE_SUPPORT_FILES                    PROP_TAG( PT_MV_TSTRING, 0x3D0F)
  973. #define PR_SERVICE_SUPPORT_FILES_W                  PROP_TAG( PT_MV_UNICODE, 0x3D0F)
  974. #define PR_SERVICE_SUPPORT_FILES_A                  PROP_TAG( PT_MV_STRING8, 0x3D0F)
  975. #define PR_SERVICE_DELETE_FILES                     PROP_TAG( PT_MV_TSTRING, 0x3D10)
  976. #define PR_SERVICE_DELETE_FILES_W                   PROP_TAG( PT_MV_UNICODE, 0x3D10)
  977. #define PR_SERVICE_DELETE_FILES_A                   PROP_TAG( PT_MV_STRING8, 0x3D10)
  978. #define PR_AB_SEARCH_PATH_UPDATE                    PROP_TAG( PT_BINARY,     0x3D11)
  979. #define PR_PROFILE_NAME                             PROP_TAG( PT_TSTRING,   0x3D12)
  980. #define PR_PROFILE_NAME_A                           PROP_TAG( PT_STRING8,   0x3D12)
  981. #define PR_PROFILE_NAME_W                           PROP_TAG( PT_UNICODE,   0x3D12)
  982.  
  983. /*
  984.  *  Status object properties
  985.  */
  986.  
  987. #define PR_IDENTITY_DISPLAY                         PROP_TAG( PT_TSTRING,   0x3E00)
  988. #define PR_IDENTITY_DISPLAY_W                       PROP_TAG( PT_UNICODE,   0x3E00)
  989. #define PR_IDENTITY_DISPLAY_A                       PROP_TAG( PT_STRING8,   0x3E00)
  990. #define PR_IDENTITY_ENTRYID                         PROP_TAG( PT_BINARY,    0x3E01)
  991. #define PR_RESOURCE_METHODS                         PROP_TAG( PT_LONG,      0x3E02)
  992. #define PR_RESOURCE_TYPE                            PROP_TAG( PT_LONG,      0x3E03)
  993. #define PR_STATUS_CODE                              PROP_TAG( PT_LONG,      0x3E04)
  994. #define PR_IDENTITY_SEARCH_KEY                      PROP_TAG( PT_BINARY,    0x3E05)
  995. #define PR_OWN_STORE_ENTRYID                        PROP_TAG( PT_BINARY,    0x3E06)
  996. #define PR_RESOURCE_PATH                            PROP_TAG( PT_TSTRING,   0x3E07)
  997. #define PR_RESOURCE_PATH_W                          PROP_TAG( PT_UNICODE,   0x3E07)
  998. #define PR_RESOURCE_PATH_A                          PROP_TAG( PT_STRING8,   0x3E07)
  999. #define PR_STATUS_STRING                            PROP_TAG( PT_TSTRING,   0x3E08)
  1000. #define PR_STATUS_STRING_W                          PROP_TAG( PT_UNICODE,   0x3E08)
  1001. #define PR_STATUS_STRING_A                          PROP_TAG( PT_STRING8,   0x3E08)
  1002. #define PR_X400_DEFERRED_DELIVERY_CANCEL            PROP_TAG( PT_BOOLEAN,   0x3E09)
  1003. #define PR_HEADER_FOLDER_ENTRYID                    PROP_TAG( PT_BINARY,    0x3E0A)
  1004. #define PR_REMOTE_PROGRESS                          PROP_TAG( PT_LONG,      0x3E0B)
  1005. #define PR_REMOTE_PROGRESS_TEXT                     PROP_TAG( PT_TSTRING,   0x3E0C)
  1006. #define PR_REMOTE_PROGRESS_TEXT_W                   PROP_TAG( PT_UNICODE,   0x3E0C)
  1007. #define PR_REMOTE_PROGRESS_TEXT_A                   PROP_TAG( PT_STRING8,   0x3E0C)
  1008. #define PR_REMOTE_VALIDATE_OK                       PROP_TAG( PT_BOOLEAN,   0x3E0D)
  1009.  
  1010. /*
  1011.  * Display table properties
  1012.  */
  1013.  
  1014. #define PR_CONTROL_FLAGS                            PROP_TAG( PT_LONG,      0x3F00)
  1015. #define PR_CONTROL_STRUCTURE                        PROP_TAG( PT_BINARY,    0x3F01)
  1016. #define PR_CONTROL_TYPE                             PROP_TAG( PT_LONG,      0x3F02)
  1017. #define PR_DELTAX                                   PROP_TAG( PT_LONG,      0x3F03)
  1018. #define PR_DELTAY                                   PROP_TAG( PT_LONG,      0x3F04)
  1019. #define PR_XPOS                                     PROP_TAG( PT_LONG,      0x3F05)
  1020. #define PR_YPOS                                     PROP_TAG( PT_LONG,      0x3F06)
  1021. #define PR_CONTROL_ID                               PROP_TAG( PT_BINARY,    0x3F07)
  1022. #define PR_INITIAL_DETAILS_PANE                     PROP_TAG( PT_LONG,      0x3F08)
  1023.  
  1024. /*
  1025.  * Secure property id range
  1026.  */
  1027.  
  1028. #define PROP_ID_SECURE_MIN                          0x67F0
  1029. #define PROP_ID_SECURE_MAX                          0x67FF
  1030.  
  1031.  
  1032. #endif  /* MAPITAGS_H */
  1033.