blob: 6e9e96fd8d6b00321dcca92a168f93c51adc740a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
|
#ifndef KTNEFDEFS_H
#define KTNEFDEFS_H
#define TNEF_SIGNATURE 0x223e9f78
#define LVL_MESSAGE 0x01
#define LVL_ATTACHMENT 0x02
#define atpSTRING 0x0001
#define atpTEXT 0x0002
#define atpDATE 0x0003
#define atpSHORT 0x0004
#define atpLONG 0x0005
#define atpBYTE 0x0006
#define atpWORD 0x0007
#define atpDWORD 0x0008
#define attDATESTART 0x0006
#define attDATEEND 0x0007
#define attAIDOWNER 0x0008
#define attREQUESTRES 0x0009
#define attFROM 0x8000
#define attSUBJECT 0x8004
#define attDATESENT 0x8005
#define attDATERECD 0x8006
#define attMSGSTATUS 0x8007
#define attMSGCLASS 0x8008
#define attMSGID 0x8009
#define attBODY 0x800c
#define attMSGPRIORITY 0x800d
#define attATTACHDATA 0x800f /* Attachment Data */
#define attATTACHTITLE 0x8010 /* Attachment File Name */
#define attATTACHMETAFILE 0x8011
#define attATTACHCREATEDATE 0x8012
#define attATTACHMODDATE 0x8013
#define attDATEMODIFIED 0x8020
#define attATTACHRENDDATA 0x9002
#define attMAPIPROPS 0x9003
#define attRECIPTABLE 0x9004
#define attATTACHMENT 0x9005 /* Attachment properties (?) */
#define attTNEFVERSION 0x9006
#define attOEMCODEPAGE 0x9007
/* These are found in TNEF documentation, but have so far not been implemented
#define attATTACHCREATEDATE 0x0000
#define attATTACHTRANSPORTFILENAME 0x0000
#define attCONVERSATIONID 0x0000
#define attORIGINALMSGCLASS 0x0000
#define attOWNER 0x0000
#define attPARENTID 0x0000
#define attNULL 0x0000
#define attDELEGATE 0x0000
#define attSENTFOR 0x0000
*/
#define fmsModified 0x01
#define fmsLocal 0x02
#define fmsSubmitted 0x04
#define fmsRead 0x20
#define fmsHasAttach 0x80
#define MSGFLAG_READ 0x00000001
#define MSGFLAG_UNMODIFIED 0x00000002
#define MSGFLAG_SUBMIT 0x00000004
#define MSGFLAG_UNSENT 0x00000008
#define MSGFLAG_HASATTACH 0x00000010
// supported MAPI types
#define MAPI_TYPE_NONE 0x0000
#define MAPI_TYPE_UINT16 0x0002
#define MAPI_TYPE_ULONG 0x0003
#define MAPI_TYPE_FLOAT 0x0004
#define MAPI_TYPE_DOUBLE 0x0005
#define MAPI_TYPE_BOOLEAN 0x000b
#define MAPI_TYPE_OBJECT 0x000d
#define MAPI_TYPE_TIME 0x0040
#define MAPI_TYPE_STRING8 0x001e
#define MAPI_TYPE_USTRING 0x001f
#define MAPI_TYPE_BINARY 0x0102
#define MAPI_TYPE_VECTOR 0x1000
// supported MAPI tags
#define MAPI_TAG_INDEX 0x0e21
#define MAPI_TAG_SIZE 0x0e20
#define MAPI_TAG_FILENAME 0x3707
#define MAPI_TAG_DISPLAYNAME 0x3001
#define MAPI_TAG_DATA 0x3701
#define MAPI_TAG_ATTACHENCODING 0x3702
#define MAPI_TAG_EXTENSION 0x3703
#define MAPI_TAG_ATTACHMETHOD 0x3705
#define MAPI_TAG_RENDERINGPOS 0x370b
#define MAPI_TAG_MIMETAG 0x370e
#define MAPI_TAG_ATTACHFLAGS 0x3714
#define MAPI_IID_IMessage 0x00020307
// unsupported Outlook Contact Properties
// note: properties beginning with MAPI_TAG_CONTACT
// are 'named' properties
#define MAPI_TAG_PR_MESSAGE_DELIVERY_TIME 0x0E060040 // CreationTime
#define MAPI_TAG_PR_MESSAGE_SIZE 0x0E080003 // Size
#define MAPI_TAG_PR_SENSITIVITY 0x00360003 // Sensitivity
#define MAPI_TAG_PR_MESSAGE_CLASS 0x001A001F // MessageClass
#define MAPI_TAG_PR_IMPORTANCE 0x00170003 // Importance
#define MAPI_TAG_PR_ENTRYID 0x0FFF0102 // EntryID
#define MAPI_TAG_PR_BODY 0x1000001F // Body
#define MAPI_TAG_CONTACT_Categories "Keywords" // Categories
#define MAPI_TAG_PR_DISPLAY_NAME 0x3001001F // FullName
#define MAPI_TAG_PR_TITLE 0x3A17001F // JobTitle
#define MAPI_TAG_PR_COMPANY_NAME 0x3A16001F // CompanyName
#define MAPI_TAG_PR_DISPLAY_NAME_PREFIX 0x3A45001E // Title
#define MAPI_TAG_PR_SURNAME 0x3A11001E // LastName
#define MAPI_TAG_PR_MIDDLE_NAME 0x3A44001F // MiddleName
#define MAPI_TAG_PR_GIVEN_NAME 0x3A06001F // FirstName
#define MAPI_TAG_PR_GENERATION 0x3A05001E // Suffix
#define MAPI_TAG_PR_BUSINESS_HOME_PAGE 0x3A51001F // BusinessHomePage
#define MAPI_TAG_PR_PERSONAL_HOME_PAGE 0x3A50001F // PersonalHomePage
#define MAPI_TAG_PR_FTP_SITE 0x3A4C001E // FTPSite
#define MAPI_TAG_PR_INITIALS 0x3A0A001E // Initials
#define MAPI_TAG_CONTACT_FILEUNDER "0x8005" // FileAs
#define MAPI_TAG_CONTACT_LASTNAMEANDFIRSTNAME "0x8017" // LastNameandFirstName
#define MAPI_TAG_CONTACT_COMPANYANDFULLNAME "0x8018" // CompanyAndFullName
#define MAPI_TAG_CONTACT_FULLNAMEANDCOMPANY "0x8019" // FullNameAndCompany
#define MAPI_TAG_CONTACT_HOMEADDRESS "0x801A" // HomeAddress
#define MAPI_TAG_CONTACT_BUSINESSADDRESS "0x801B" // BusinessAddress
#define MAPI_TAG_CONTACT_OTHERADDRESS "0x801C" // OtherAddress
#define MAPI_TAG_CONTACT_SELECTEDADDRESS "0x8022" // SelectedMailingAddress:
// 0 = None
// 1 = Home
// 2 = Business
// 3 = Other
#define MAPI_TAG_CONTACT_WEBPAGE "0x802B" // WebPage
#define MAPI_TAG_CONTACT_YOMIFIRSTNAME "0x802C" // YomiFirstName
#define MAPI_TAG_CONTACT_YOMILASTNAME "0x802D" // YomiLastName
#define MAPI_TAG_CONTACT_YOMICOMPANYNAME "0x802E" // YomiCompanyName
#define MAPI_TAG_CONTACT_LASTFIRSTNOSPACE "0x8030" // LastFirstNoSpace
#define MAPI_TAG_CONTACT_LASTFIRSTSPACEONLY "0x8031" // LastFirstSpaceOnly
#define MAPI_TAG_CONTACT_COMPANYLASTFIRSTNOSPACE "0x8032" // CompanyLastFirstNoSpace
#define MAPI_TAG_CONTACT_COMPANYLASTFIRSTSpaceOnly "0x8033" // CompanyLastFirstSpaceOnly
#define MAPI_TAG_CONTACT_LASTFIRSTNOSPACECOMPANY "0x8034" // LastFirstNoSpaceCompany
#define MAPI_TAG_CONTACT_LASTFIRSTSPACEONLYCOMPANY "0x8035" // LastFirstSpaceOnlyCompany
#define MAPI_TAG_CONTACT_LASTFIRSTANDSuffix "0x8036" // LastFirstAndSuffix
#define MAPI_TAG_CONTACT_BUSINESSADDRESSSTREET "0x8045" // BusinessAddressStreet
#define MAPI_TAG_CONTACT_BUSINESSADDRESSCITY "0x8046" // BusinessAddressCity
#define MAPI_TAG_CONTACT_BUSINESSADDRESSSTATE "0x8047" // BusinessAddressState
#define MAPI_TAG_CONTACT_BUSINESSADDRESSPOSTALCODE "0x8048" // BusinessAddressPostalCode
#define MAPI_TAG_CONTACT_BUSINESSADDRESSCOUNTRY "0x8049" // BusinessAddressCountry
#define MAPI_TAG_CONTACT_BUSINESSADDRESSPOBOX "0x804A" // BusinessAddressPostOfficeBox
#define MAPI_TAG_CONTACT_USERFIELD1 "0x804F" // UserField1
#define MAPI_TAG_CONTACT_USERFIELD2 "0x8050" // UserField2
#define MAPI_TAG_CONTACT_USERFIELD3 "0x8051" // UserField3
#define MAPI_TAG_CONTACT_USERFIELD4 "0x8052" // UserField4
#define MAPI_TAG_CONTACT_IMADDRESS "0x8062" // InternetMailAddress (only >= Outlook 2002)
#define MAPI_TAG_CONTACT_EMAIL1ADDRTYPE "0x8082" // EMail1AddressType
#define MAPI_TAG_CONTACT_EMAIL1EMAILADDRESS "0x8083" // EMail1Address
#define MAPI_TAG_CONTACT_EMAIL1ORIGINALDISPLAYNAME "0x8084" // EMail1DisplayName
#define MAPI_TAG_CONTACT_EMAIL1ORIGINALENTRYID "0x8085" // EMail1EntryID
#define MAPI_TAG_CONTACT_EMAIL2ADDRTYPE "0x8092" // EMail2AddressType
#define MAPI_TAG_CONTACT_EMAIL2EMAILADDRESS "0x8093" // EMail2Address
#define MAPI_TAG_CONTACT_EMAIL2ORIGINALDISPLAYNAME "0x8094" // EMail2DisplayName
#define MAPI_TAG_CONTACT_EMAIL2ORIGINALENTRYID "0x8095" // EMail2EntryID
#define MAPI_TAG_CONTACT_EMAIL3ADDRTYPE "0x80A2" // EMail3AddressType
#define MAPI_TAG_CONTACT_EMAIL3EMAILADDRESS "0x80A3" // EMail3Address
#define MAPI_TAG_CONTACT_EMAIL3ORIGINALDISPLAYNAME "0x80A4" // EMail3DisplayName
#define MAPI_TAG_CONTACT_EMAIL3ORIGINALENTRYID "0x80A5" // EMail3EntryID
#define MAPI_TAG_CONTACT_INTERNETFREEBUSYADDRESS "0x80D8" // InternetFreeBusyAddress
#define MAPI_TAG_CONTACT_BILLINGINFORMATION "0x8535" // BillingInformation
#define MAPI_TAG_CONTACT_REMINDERTIME "0x8502" // N/A
#define MAPI_TAG_CONTACT_MILEAGE "0x8534" // Mileage
#define MAPI_TAG_PR_ASSISTANT_TELEPHONE_NUMBER 0x3A2E001F // AssistantTelephoneNumber
#define MAPI_TAG_PR_BUSINESS_TELEPHONE_NUMBER 0x3A08001F // BusinessTelephoneNumber
#define MAPI_TAG_PR_BUSINESS2_TELEPHONE_NUMBER 0x3A1B001F // Business2TelephoneNumber
#define MAPI_TAG_PR_BUSINESS_FAX_NUMBER 0x3A24001F // BusinessFaxNumber
#define MAPI_TAG_PR_CALLBACK_TELEPHONE_NUMBER 0x3A02001F // CallbackTelephoneNumber
#define MAPI_TAG_PR_CAR_TELEPHONE_NUMBER 0x3A1E001F // CarTelephoneNumber
#define MAPI_TAG_PR_COMPANY_MAIN_PHONE_NUMBER 0x3A57001F // CompanyMainTelephoneNumber
#define MAPI_TAG_PR_HOME_TELEPHONE_NUMBER 0x3A09001F // HomeTelephoneNumber
#define MAPI_TAG_PR_HOME2_TELEPHONE_NUMBER 0x3A2F001F // Home2TelephoneNumber
#define MAPI_TAG_PR_HOME_FAX_NUMBER 0x3A25001F // HomeFaxNumber
#define MAPI_TAG_PR_ISDN_NUMBER 0x3A2D001F // ISDNNumber
#define MAPI_TAG_PR_MOBILE_TELEPHONE_NUMBER 0x3A1C001F // MobileTelephoneNumber
#define MAPI_TAG_PR_OTHER_TELEPHONE_NUMBER 0x3A1F001F // OtherTelephoneNumber
#define MAPI_TAG_PR_PRIMARY_FAX_NUMBER 0x3A23001F // OtherFaxNumber
#define MAPI_TAG_PR_PAGER_TELEPHONE_NUMBER 0x3A21001F // PagerNumber
#define MAPI_TAG_PR_PRIMARY_TELEPHONE_NUMBER 0x3A1A001F // PrimaryTelephoneNumber
#define MAPI_TAG_PR_RADIO_TELEPHONE_NUMBER 0x3A1D001F // RadioTelephoneNumber
#define MAPI_TAG_PR_TELEX_NUMBER 0x3A2C001F // TelexNumber
#define MAPI_TAG_PR_TTYTDD_PHONE_NUMBER 0x3A4B001F // TTYTDDTelephoneNumber
#define MAPI_TAG_PR_POSTAL_ADDRESS 0x3A15001F // MailingAddress
#define MAPI_TAG_PR_BUSINESS_ADDRESS_COUNTRY 0x3A26001E // MailingAddressCountry
#define MAPI_TAG_PR_LOCALITY 0x3A27001F // MailingAddressCity
#define MAPI_TAG_PR_STATE_OR_PROVINCE 0x3A28001E // MailingAddressState
#define MAPI_TAG_PR_STREET_ADDRESS 0x3A29001F // MailingAddressStreet
#define MAPI_TAG_PR_POSTAL_CODE 0x3A2A001E // MailingAddressPostalCode
#define MAPI_TAG_PR_PO_BOX 0x3A2B001E // MailingAddressPostOfficeBox
#define MAPI_TAG_PR_HOME_ADDRESS_CITY 0x3A59001E // HomeAddressCity
#define MAPI_TAG_PR_HOME_ADDRESS_STREET 0x3A5D001E // HomeAddressStreet
#define MAPI_TAG_PR_HOME_ADDRESS_STATE_OR_PROVINCE 0x3A5C001E // HomeAddressState
#define MAPI_TAG_PR_HOME_ADDRESS_COUNTRY 0x3A5A001E // HomeAddressCountry
#define MAPI_TAG_PR_HOME_ADDRESS_PO_BOX 0x3A5E001E // HomeAddressPostOfficeBox
#define MAPI_TAG_PR_HOME_ADDRESS_POSTAL_CODE 0x3A5B001E // HomeAddressPostalCode
#define MAPI_TAG_PR_OTHER_ADDRESS_CITY 0x3A5F001E // OtherAddressCity
#define MAPI_TAG_PR_OTHER_ADDRESS_STREET 0x3A63001E // OtherAddressStreet
#define MAPI_TAG_PR_OTHER_ADDRESS_STATE_OR_PROVINCE 0x3A62001E // OtherAddressState
#define MAPI_TAG_PR_OTHER_ADDRESS_COUNTRY 0x3A60001E // OtherAddressCountry
#define MAPI_TAG_PR_OTHER_ADDRESS_POSTAL_CODE 0x3A61001E // OtherAddressPostalCode
#define MAPI_TAG_PR_OTHER_ADDRESS_PO_BOX 0x3A64001E // OtherAddressPostOfficeBox
#define MAPI_TAG_PR_DEPARTMENT_NAME 0x3A18001F // Department
#define MAPI_TAG_PR_MANAGER_NAME 0x3A4E001F // ManagerName
#define MAPI_TAG_PR_OFFICE_LOCATION 0x3A19001F // Location
#define MAPI_TAG_PR_ASSISTANT 0x3A30001F // AssistantName
#define MAPI_TAG_PR_PROFESSION 0x3A46001F // Profession
#define MAPI_TAG_PR_NICKNAME 0x3A4F001F // NickName
#define MAPI_TAG_PR_BIRTHDAY 0x3A420040 // Birthday
#define MAPI_TAG_PR_SPOUSE_NAME 0x3A48001F // SpouseName
#define MAPI_TAG_PR_WEDDING_ANNIVERSARY 0x3A410040 // Anniversary
#define MAPI_TAG_PR_ACCOUNT 0x3A00001E // Account
#define MAPI_TAG_PR_COMPUTER_NETWORK_NAME 0x3A49001E // ComputerNetworkName
#define MAPI_TAG_PR_CHILDRENS_NAMES 0x3A58101E // Children
#define MAPI_TAG_PR_CUSTOMER_ID 0x3A4A001E // CustomerID
#define MAPI_TAG_PR_GENDER 0x3A4D0002 // Gender:
// 0 = Unspecified
// 1 = Female
// 2 = Male
#define MAPI_TAG_PR_GOVERNMENT_ID_NUMBER 0x3A07001E // GovernmentIDNumber
#define MAPI_TAG_PR_HOBBIES 0x3A43001E // Hobby
#define MAPI_TAG_PR_LANGUAGE 0x3A0C001E // Language
#define MAPI_TAG_PR_LOCATION 0x3A0D001E // OfficeLocation
#define MAPI_TAG_PR_ORGANIZATIONAL_ID_NUMBER 0x3A10001E // OrganizationalIDNumber
#define MAPI_TAG_PR_REFERRED_BY_NAME 0X3A47001E // ReferredBy
#endif /* KTNEFDEFS_H */
|