Skip to content

Instantly share code, notes, and snippets.

@aspose-com-gists
Created December 16, 2022 18:58

Revisions

  1. aspose-com-gists created this gist Dec 16, 2022.
    9 changes: 9 additions & 0 deletions olm-check-messages.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,9 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    var folder = olm.GetFolder("Inbox", true);

    if (folder.HasMessages)
    {
    Console.WriteLine($"Message count: {folder.MessageCount}");
    }
    }
    13 changes: 13 additions & 0 deletions olm-extract-email.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,13 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    var folder = olm.GetFolder("Inbox", true);

    foreach (var messageInfo in folder.EnumerateMessages())
    {
    if (messageInfo.Date == DateTime.Today)
    {
    // Extracts today's messages form Inbox
    var msg = olm.ExtractMapiMessage(messageInfo);
    }
    }
    }
    13 changes: 13 additions & 0 deletions olm-folder-hierarchy.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,13 @@
    using (var olm = new OlmStorage(fileName))
    {
    PrintAllFolders(olm.FolderHierarchy, string.Empty);
    }

    private void PrintAllFolders(List<OlmFolder> folderHierarchy, string indent)
    {
    foreach (var folder in folderHierarchy)
    {
    Console.WriteLine($"{indent}{folder.Name}");
    PrintAllFolders(folder.SubFolders, indent+"-");
    }
    }
    5 changes: 5 additions & 0 deletions olm-get-folder-by-name.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,5 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    // get inbox folder by name
    OlmFolder folder = olm.GetFolder("Inbox", true);
    }
    4 changes: 4 additions & 0 deletions olm-get-folders.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,4 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    var folders = olm.GetFolders();
    }
    10 changes: 10 additions & 0 deletions olm-list-mapi-messages.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,10 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    var folder = olm.GetFolder("Inbox", true);

    foreach (var msg in folder.EnumerateMapiMessages())
    {
    // save message in MSG format
    msg.Save($"{msg.Subject}.msg");
    }
    }
    8 changes: 8 additions & 0 deletions olm-list-message-infos.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,8 @@
    using (var olm = OlmStorage.FromFile(fileName))
    {
    var folder = olm.GetFolder("Inbox", true);
    foreach (var messageInfo in folder.EnumerateMessages())
    {
    Console.WriteLine(messageInfo.Subject);
    }
    }
    2 changes: 2 additions & 0 deletions olm-open-by-constructor.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,2 @@
    var fileName = "MyStorage.olm";
    var olm = new OlmStorage(fileName);
    2 changes: 2 additions & 0 deletions olm-open-by-fromfile-method.cs
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,2 @@
    var fileName = "MyStorage.olm";
    var olm = OlmStorage.FromFile(fileName);