On 03/22/11 21:31, Brad Hards wrote:
> On Wed, 23 Mar 2011 03:44:30 am Alois Schloegl wrote:
>> bin/openchangeclient --pf --fetch-items=Contact --folder "Our Contacts"
> I'm not sure exactly which email address information you're trying to get,
> but
> perhaps you can run the command with --dump-data -d9 and determine which
> property you need from that?
>
> Brad
> _______________________________________________
> devel mailing list
> [email protected]
> http://mailman.openchange.org/listinfo/devel
Dear Brad,
thanks for this hint. Now, I can that the e-mail addresses are there.
Below is an example where the e-mail addresses are stored.
lpProps: struct mapi_SPropValue
ulPropTag :
UNKNOWN_ENUM_VALUE (0x802C001E)
value : union
mapi_SPropValue_CTR(case 30)
lpszA :
'[email protected]'
lpProps: struct mapi_SPropValue
ulPropTag :
UNKNOWN_ENUM_VALUE (0x802F001E)
value : union
mapi_SPropValue_CTR(case 30)
lpszA :
'gggggggg wwwww ([email protected])'
lpProps: struct mapi_SPropValue
ulPropTag :
UNKNOWN_ENUM_VALUE (0x803B001E)
value : union
mapi_SPropValue_CTR(case 30)
lpszA :
'[email protected]'
lpProps: struct mapi_SPropValue
ulPropTag :
UNKNOWN_ENUM_VALUE (0x81DC0102)
value : union
mapi_SPropValue_CTR(case 258)
bin :
SBinary_short cb=174
[0000] 00 00 00 00 81 2B 1F A4 BE A3 10 19 9D 6E 00 DD .....+.. .....n..
[0010] 01 0F 54 02 00 00 01 80 47 00 65 00 72 00 68 00 ..T..... g.g.g.g.
[0020] 61 00 72 00 64 00 20 00 57 00 69 00 63 00 68 00 g.g.g. . w.w.w.w.
[0030] 65 00 20 00 28 00 67 00 65 00 72 00 68 00 61 00 w. .(.g. g.g.g.g.
[0040] 72 00 64 00 2E 00 77 00 69 00 63 00 68 00 65 00 g.g...w. w.w.w.w.
[0050] 40 00 75 00 6E 00 69 00 76 00 69 00 65 00 2E 00 @.u.n.i. v.i.e...
[0060] 61 00 63 00 2E 00 61 00 74 00 29 00 00 00 53 00 a.c...a. t.)...S.
[0070] 4D 00 54 00 50 00 00 00 67 00 65 00 72 00 68 00 M.T.P... g.g.g.g.
[0080] 61 00 72 00 64 00 2E 00 77 00 69 00 63 00 68 00 g.g.g... w.w.w.w.
[0090] 65 00 40 00 75 00 6E 00 69 00 76 00 69 00 65 00 [email protected]. i.v.i.e.
[00A0] 2E 00 61 00 63 00 2E 00 61 00 74 00 00 00 ..a.c... a.t...
So, these enum values are relevant:
0x802C001E
0x802F001E
0x803B001E
0x81DC0102
Two of these are defined in ./libmapi/conf/mapi-properties
0x802f001e PR_EMS_AB_EXTENSION_ATTRIBUTE_3
0x803b001e PR_EMS_AB_HELP_FILE_NAME
but it seems they are not recognized in libmapi/mapidump.c.
Adding the following code in the function mapidump_contact in file
libmapi/mapidump.c does not return the e-mail addresses.
email = (const char *)find_mapi_SPropValue_data(properties,
PidLidEmail1OriginalDisplayName);
+ if (!email)
+ email = (const char
*)find_mapi_SPropValue_data(properties, 0x803B001E);
+ if (!email)
+ email = (const char
*)find_mapi_SPropValue_data(properties, 0x802C001E);
+ if (!email)
+ email = (const char
*)find_mapi_SPropValue_data(properties, 0x802F001E);
+ if (!email)
+ email = (const char
*)find_mapi_SPropValue_data(properties, 0x803B001E);
Do you have any idea how to proceed in order to extract the e-mail
addresses ?
Best regards,
Alois
_______________________________________________
devel mailing list
[email protected]
http://mailman.openchange.org/listinfo/devel