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.
--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Professional Programming Outlook 2007.
Reminder Manager, Extended Reminders, Attachment Options.
http://www.slovaktech.com/products.htm
"Ashish" wrote in message
...
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.