MAPITags.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:53k
源码类别:

模拟服务器

开发平台:

C/C++

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