New problems in reading OLM

Hello,
attached a sample project + my sample .OLM created using Office for Mac 2021 (16.65 VL)

  1. When reading this file, there are 2 items in each message folder which is blank! 2 inside Inbox, 2 inside Sent Items

  2. Emails are saved in plain text mode, and items such as meetings are saved incorrectly, html inside plain text mode!

  3. Signed and/or signed+encrypted emails are saved blank

  4. And my question: Considering the method I’m using to read OLM files, I still don’t know how to get the storage-wide unique message ID :frowning:

WindowsApplication1.zip (3.9 MB)

@australian.dev.nerds

We have logged this problem in our issue tracking system as EMAILNET-40732. You will be notified via this forum thread once this issue is resolved.

We apologize for your inconvenience.

Hello,
I understand that issues 1 to 3 will take time, but the question #4 can you please specify when using OlmStorage to read OLM: OlmMessageInfo in EnumerateMessages, what’s the workaround to get storage-wide unique message ID without extracting the whole message?
I mean please clarify this one with a higher priority as this is simply a question I’m still unsure about!

@australian.dev.nerds

We are working on this point and we will answer it as soon as we figure it out.

@australian.dev.nerds

Since the OLM format is undocumented, we are investigating its internal structure in order to add this feature. OLM doesn’t support unique ID in the form you request. There is an index that contains file offset by which you can find the item. Also, each item has a unique path + name, such as:

Accounts/sepantasoft@outlook.com/com.microsoft.__Messages/Sent Items/message_00001.xml

Although it is unique, it’s hardly convenient to use it as a unique ID. As a workaround, we can generate and assign to each item an unique ID that you can use to retrieve messages. But these IDs will only work with Aspose.Email.

1 Like

Hello,
There are still some problems in the extracted results:

  1. This is how Calendar and some other items are saved (see calendar.png)
    calendar.png (138.5 KB)
  • If you try to save Calendar items as email message, the same happens, output files are deformed.
  1. Contacts have missing images inside (see contact1.png)
    contact1.png (75.3 KB)
  • I’d like those images to appear inside the message, if not possible, add them as attachment to the output message
  • If you try to save Calendar items as email message, the same happens, output files are deformed.
  1. Contacts with attachments like audio are showing a non-working link (see contact2.png)
    contact2.png (35.3 KB)

  2. If you check the items under the Notes AND Tasks folder, you’ll find they are all saved incorrectly (see notes.png)
    notes.png (81.3 KB)

  3. If you check in my provided project:

If MyMSG.From Is Nothing And MyMSG.To Is Nothing And MyMSG.Subject Is Nothing Then Continue For

If I don’t perform this step, I will have some invalid messages like this:

Date: Thu, 13 Oct 2022 21:38:43 +0000
X-Unsent: 1
Content-Type: text/plain
MIME-Version: 1.0

That’s all, did you reproduce this?
Thanks.

@australian.dev.nerds

Please use the latest version of Aspose.Email for .NET 22.10 to avoid these issues.

1 Like

Hello, I’m very excited to see 22.10 which fixed more bugs and wanna thank you for your great work, one more step ahead :slight_smile:

Hi, any hope we can have a storage-wide unique item id for olm/mbox/tgz/nsf readers?
It’s vital because first we generate the graphical storage structure to the user to select some items/messages.
Then user select one to open, now using a unique ID we should be able to extract the item directly.
Without looping through the whole storage again (storages can be so huge)
And with no unique ID, sometimes is impossible to find the correct item/message at the extraction time, rendering the whole storage reader useless, like my case :frowning:

@australian.dev.nerds

This feature for OLM will definitely be added in 22.12. For TGZ and MBOX perhaps a little later. Thank you for your patience.

Thanks.

1 Like

Thank you for your great work, and the very good news, btw, you mean not for NSF?

@australian.dev.nerds,

about NSF, there was already an answer at https://forum.aspose.com/t/olm-save-message-to-stream/251417/8:

As for NSF, we are not sure of the result. As already mentioned in the documentation, the NSF implementation is quite limited.

In addition, we still have not solved the problem of getting folders in NSF. This is because the NSF format is very closed, and problematic for reverse engineering, because we do not know the algorithms used to encrypt the data. Please note that the implementation is basic and not good for active use.

Thanks.

1 Like

Hi, oh yes I remember it, since I’ve been told about folder limit, I though it might be different for message.
To be honest, I just needed ost/pst/olm support, when I found mbox/tgz/nsf are also included I’ve added them, of course mbox is very useful, tgz much less, and I’ve doubt if NSF is something someone cares about, considered to be dead (IMO) :smiley: