Well, for one thing if an email is only within an Exchange organization
that property doesn't exist. Internal emails never have a
PR_TRANSPORT_MESSAGE_HEADERS property.
That property, when it does exist, is a text property (PT_STRING8) and
there are no "subfields" in it. It's just a string. You can parse it using
string functions and find that X-header and remove it using string
functions.
Ashish said:
Oh thats strange. Ok i'll do this task by different way. How to delete a
custom property from mail item.
Suppose i add a new field in mail item on exchange server and i want to
delete this field in outlook addin.
"urn:schemas:mailheader:X-MyField-Name"
IMessagePtr msgptr;
FieldsPtr Flds;
Flds = msgptr->Fields;
Flds->Item[ "urn:schemas:mailheader:X-MyField-Name" ]->Value = "field
value"
In outlook addin i can get this field and its value through
HrGetOneProp(PR_TRANSPORT_MESSAGE_HEADERS.)
If i want to delete this field then i think it's possible using
HrSetOneProp .
But HrSetOneProp takes long value as property tag to set value for any
property. I dont know the long value for
urn:schemas:mailheader:X-MyField-Name. I used outspy/mfcmapi but it
doesn't show that field.