Security

While bypassing the Security Patch to allow for an unrestricted access to the Outlook objects, Redemption does provide several layers of security to help you minimize a change of a rogue code using taking advantage of Redemption.

Renaming the DLL

AuthKey property (deprecated)

Customizing the DLL

Registry-free COM

Directly loading Redemption

 

  • Similar to registry-free COM, you can explicitly load Redemption library and create instances of its creatable objects without registering the dll in the registry or even using an application manifest. On the low level, all in-proc COM libraries (dlls) export DllGetClassObject function that the COM system uses after looking up the dll location through the class name/CLSID in the registry. Since you know the Redemption dll location, there is no reason to create any registry entries for the COM system. You will still need to register Redemption in the registry on your development machine to be able to import the type library and/or create the interop dll (in case of .Net languages). At run-time however, you can simply copy Redemption.dll/Redemption64.dll to the target folder and use RedemptionLoader class to create Redemption objects.

                //tell the app where the 32 and 64 bit dlls are located

                //by default, they are assumed to be in the same folder as the current assembly and be named

                //Redemption.dll and Redemption64.dll.

                //In that case, you do not need to set the two properties below

                RedemptionLoader.DllLocation64Bit = @"c:\SourceCode\Redemption\redemption64.dll";

                RedemptionLoader.DllLocation32Bit = @"c:\SourceCode\Redemption\redemption.dll";

                //Create a Redemption object and use it

                RDOSession session = RedemptionLoader.new_RDOSession();

                session.Logon(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

    RedemptionLoader class can be downloaded here (C#, VB.Net, VBA, VC++ (managed and unmanaged) and Delphi versions are included).

     

     

     

     

  •