J'utilise Redemption.dll pour définir des propriétés personnalisées pour mes messages avec set_Filed() et get_field() en C#. Tout fonctionne parfaitement jusqu'au moment où j'envoie mes messages. À partir d'Outlook, j'utilise RDOMail.Send() et cela a envoyé le message au dossier Brouillons. Ensuite, j'ai lu dans la FAQ Redemption que je devrais utiliser la méthode IMessage :: Submit (que je ne trouve nulle part dans la DLL pour .NET) et ensuite utiliser DeliverNow(), méthode que j'ai utilisée mais à ma grande surprise quand je reçois mes messages, je perds les propriétés que j'avais définies. Ceci est vraiment très important pour notre projet car si Outlook ne peut pas envoyer de mails, cela ne vaut rien.Envoyer un message avec des propriétés personnalisées avec Redemption
Voici une partie de mon 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
{
}
}
Merci.