We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

Hidden attachements

When we have images added as a signature to the email (embedded) , they are included as attachements with the property “hidden” (PR_ATTACHMENT_HIDDEN / 0x7FFE000B) = true.

But sometimes this property doesn’t exist and I can’t determine if the attachement is hidden or not.

I’ve tried to access the property PR_ATTACH_CONTENT_ID / 0x3712001E to determine by the value: nameoffile@id wich usually means it is embedded but the line
MapiProperty prop = attachement.Properties[0x3712001E] always comes null… even when i know it’s not (outlook spy)

Any idea what i can do?


Thanks for considering Aspose.

We are looking into this issue and will get back to you shortly.


Could you please explain about your scenario? Do you need to change an existing outlook message file to hide the images? What task you want to do with the messages?


Our company has to register all the business emails that are sent or received accourding to the projects that they relate to.
Our system opens the email and based on certain parameters determines the database project, the people who sent/received it based on their email address and then saves the attachements on the correct project folder (and alerts the people involved on the project about the new files received). The problem is that we have an image as a signature wich is a hidden attachement. If the email has no “real” attachements the system still saves that attachement wich it shouldn’t.

I’ve thought about a couple of other ways of doing this (file size, name, etc) but since some of our clients also use their company logos on their signature, it complicates the situation a little bit more.


The property is there but is not 0x3712001E but 0x3712001F. For unicode message format type of outlook message, the tag is 0x3712001F. For asncii message format type, it is 0x3712001E.

Possible Solutions:

1. check if the 0x3712001E or 0x3712001F is existing in your code.

2. Attachement.GetPropertyString(0x3712001E); It will handle the issue automatically.


strange it also comes null…

i’m doing this:
MapiMessage msg = MapiMessage.FromFile(msgFile);

foreach (MapiAttachment att in msg.Attachments)
string attachContentID = att .GetPropertyString(0x3712001E);


It works!! thanks!!

this line “2. Attachement.GetPropertyString(0x3712001E); It will handle the issue automatically.” confused me…

att .GetPropertyString(0x3712001F); works just fine.

Thank you very much.


I made a mistake for this.

Please use TryGetPropertyString(long) function, it will test the 0x3712001E and 0x3712001F, return the existing one to you.