views:

7

answers:

0

Hello.

I’m using Redemption.dll to set custom properties to my messages with set_Filed() and get_field() in C#. Everything works perfectly until the moment I send my messages. From Outlook I use RDOMail.Send() and this sent the message to the Drafts folder. Then I read in the Redemption FAQ that I should use the IMessage::Submit() method (that I couldn’t find anywhere in the dll for .NET) and then use DeliverNow(), method that I did use but to my surprise when I receive my messages I lose the properties I had set. This is really completely critical to our project since if Outlook can’t send mails it’s worth nothing.

Here is part of my code.

 private void adxOutlookEvents_ItemSend(object sender, AddinExpress.MSO.ADXOlItemSendEventArgs e)
        {
            try
            {
   RDOSessionClass _RDOSession= MessagesActions.GetRDOSession();
                Outlook.MailItem _MailItem= e.Item as Outlook.MailItem;
                RDOMail _RdoMail = MessagesActions.GetRDOMail(_RDOSession, _MailItem);
                _RdoMail.Send();                // Send using Redeption
                e.Cancel = true;                // Only send using Redeption


                if (_RdoMail != null && Marshal.IsComObject(_RdoMail))
                    Marshal.ReleaseComObject(_RdoMail);

                Redemption.MAPIUtils _MAPIUtils = new MAPIUtils();
                _MAPIUtils.DeliverNow(0, 0);
                if (_MAPIUtils != null && Marshal.IsComObject(_MAPIUtils))
                    Marshal.ReleaseComObject(_MAPIUtils);

                CurrentInspector.Close(Outlook.OlInspectorClose.olDiscard);
            }
            catch
            {
            }
}     

Thanks.