What is Outlook Redemption?


Outlook Redemption works around limitations imposed by the Outlook Security Patch plus provides a number of objects and functions to work with properties and functionality not exposed through the Outlook Object Model.

Redemption library includes the RDO (Redemption Data Objects) family of objects that can function as a complete Outlook Object Model or CDO 1.21 replacement.

With Outlook Redemption you can

  • Make your code runs unaffected by the Security Patch.
  • Run your code in a secondary thread without slowing down Outlook (with the RDO family of objects).
  • Access properties not exposed by the Outlook Object Model (internet message headers, sender e-mail address and hundreds more properties)
  • Display Address Book.
  • Directly access RTF body of any Outlook item
  • Import MSG, MIME (EML/RFC822), vCard, iCalendar, TNEF, Exchange Fast Transfer Stream, etc. files
  • Export messages to the MSG, EML, TXT, HTML, MHTML, TNEF, iCal, vTodo, vCard, FTS (Exchange Fast Transfer Stream) formats.
  • Access and manipulate Outlook accounts (Outlook 2002 and above, RDO library)
  • Create, access and manipulate MAPI profiles and accounts (Profman library, see also RDOSession.Profiles)
  • Access MAPI stores.
  • Access Outlook nicknames.
  • Manage Junk Mail settings
  • Manage categories
  • Directly access message attachments as strings or as arrays without saving them as files first
  • Use Incremental Change Synchronization (ICS) API to sync your data with Exchange folders.
  • Manage Exchange and client rules, folder Access Control Lists (ACL), etc.
  • Recover deleted messages and folders from Exchange mailboxes
  • Use ForwardAsAttachment and NewMeeting events missing from the Outlook Object Model
  • And much, much more!

Redemption supports Outlook 98, 2000, 2002, 2003, 2007, 2010, 2013, 2016, 2019, 2021 (both 32 and 64 bit) (Outlook 97 is not supported by the Safe*Item objects) as well as the standalone version of MAPI (no Outlook installed).

The RDO family of objects can also be used with the Exchange Server or standalone versions of Extended MAPI (Exchange 5.5 through 2013) .

Using Outlook Redemption 

Please follow and carefully read the links below before using Outlook Redemption.

To use Redemption in a script or VBA, register redemption.dll (or redemption64.dll in case of a 64 bit version of Outlook) with regsvr32.exe in any folder. You can then create various Redemption objects using the CreateObject function (e.g. set session = CreateObject("Redemption.RDOSession")).

To use Redemption from C# or VB.Net, add a reference to the included interop  dll (Interop.Redemption.dll) to your project references. To create Redemption objects, you can use either the new operator (e.g. RDOSession session = new RDOSession();) or use RedemptionLoader (e.g. RDOSession session = RedemptionLoader.new_RDOSession();). In the former case (the new operator) the Redemption dll must be installed using regsvr32.exe.
Please make sure to build your project to match the Outlook bitness on the machine where your code is running.

How Outlook Redemption works

Redemption is a regular COM library; once registered on the system, it is accessible by any programming language that can use COM libraries (C#, VB.Net, VB, VBA, VC++, Delphi, VFP, etc).  Redemption can also be used directly without being installed in the registry by utilizing RedemptionLoader.

Redemption uses Extended MAPI (which is not affected by the Security Patch since it is not accessible to the scripting languages) to duplicate and expand on the functionality exposed by the Outlook Object Model.

RDOSession object can be used as a replacement for the Outlook.Namespace OOM object. After logging to a MAPI profile using Logon / LogonHostedExchangeMailbox/ LogonPstStore methods, RDOSession object can be used to access all store objects (messages, folders, stores, etc.) as well as address book, account, etc. objects.

If your existing code already uses the Outlook Object Model, set RDOSession.MAPIOBJECT property to Namespace.MAPIOBJECT from Outlook to share the active session between Outlook and Redemption instead of calling Logon.

If your goal is to get rid of the security prompts form the Outlook Object Model, Safe*Item family of objects achieves that with minimal changes to your existing code. All Safe*Item Redemption objects expose the Item property which must be set to an Outlook item. Once set, you can access any properties and methods, both blocked and not blocked. For the blocked properties and functions, Redemption objects completely bypass the Outlook Object Model and behave exactly like Outlook objects with no Security Patch applied.



Download Outlook Redemption Copyright 2000 - 2024 Advanced Messaging Systems LLC