Differences accessing an OST versus a PST

Is there any documentation anywhere about any differences between accessing the contents of a PST and an OST? For example, in some very quick tests (so I could be wrong) I believe I noticed the following in an OST:

  • The MAPI property PR_LAST_MODIFICATION_TIME is not available in messages in an OST.
  • The Body (ie plain text) property is not populated if the email format is Html. This sort of makes sense, except that it is not consistent with PST files.
PS: I think the PST sample app has gotten a little out of date too as it will not compile in 1.5.

Hi Phil,


Thank you for your inquiry.

I am afraid, we do not have any documentation that I can refer you. Regarding your original inquiry, I can confirm the difference in messages property [PR_LAST_MODIFICATION_TIME] when extracted from an OST. An investigation has been logged to get a justification for above mentioned missing property values. The ticket Id for your reference is NETWORKNET-33190. We will keep you posted with updates on this.

I will check the sample applications included with Aspose.Email package and log a separate task to update them.

Thanks Babar,


Another thing I have noticed. If I run some recursive code over the folders, when I get down to a folder under “Root - Mailbox\Finder” such as “Search Folder1” and call folderInfo.GetSubFolders() on this it raises a NullReferenceException. I suppose I could/should check folderInfo.HasSubFolders first.

BTW - is there a correct way to detect that a folder is a search folder?

Hi Phil,


Please accept my apologies for the delayed response.

I am afraid, I am unable to reproduce the NullReferenceException with latest version of Aspose.Email for .NET v1.5.0 and samples of my own. To investigate this matter further, please share a sample OST file that could replicate the said exception on our end.

Moreover, I have logged an investigative ticket (NETWORKNET-33204) to check if current implementation can provide any means to identify an OST folder as a “Search Folder”. We will keep you posted with updates on this.

Regards,

Hi Phil,


We have completed our investigation regarding the ticket NETWORKNET-33190.

The explanation lies in the differences between PST and OST files. Aspose.Email processes these file types in the same way. In simple words, it makes no difference for Aspose.Email whether a message is extracted from a PST or OST. If some property is absent in the message extracted from OST, it is probably not contained in the OST.

For extra information see MSDN article, it states that the PR_BODY property can be absent if a client uses an RTF-aware message store.

Note: The offline folder store (OST) is RTF-aware. The personal folder store (PST) is not RTF-aware.

Hope it helps.

Hi Phil,


It is to brief you on the ticket logged earlier as NETWORKNET-33204 (How to identify Search folder in PST/OST?). I have just learned that Aspose.Email component does not list Search Folders while working with PST or OST files. So it will not be possible to either list or identify such folders with the current implementation of Aspose.Email library.

Thanks and Regards,

Thanks Babar.


For the information of those interested, Search folders are no longer listed as of version 1.7 of Aspose.Email.