Отправка электронной почты с альтернативной учетной записью через погашение, когда режим кэширования Exchange отключен - PullRequest
0 голосов
/ 28 августа 2018

Мы отправляем электронные письма, используя альтернативную учетную запись в Outlook. Когда я делаю это с объектной моделью Outlook, все в порядке, но когда мы делаем это с Redemption (5.10.0.4312) и учетной записью Outlook по умолчанию (!) Является без использования режима кэширования Exchange , электронная почта фактически отправлено с использованием учетной записи по умолчанию. Не имеет значения, использует ли другой аккаунт (other@adomain.de) режим кэширования.

private static void CreateAndSendMailItemWithRedemption()
{
    Redemption.RDOSession session = Activator.CreateInstance(
        Type.GetTypeFromProgID("Redemption.RDOSession")) as RDOSession;
    session.Logon();
    var targetFolder =
        session.GetDefaultFolder(rdoDefaultFolders.olFolderDrafts) as RDOFolder2;

    string recipientAddress = "some@recipient.de";
    string accountNameForSending = "other@adomain.de";
    var mailItem = targetFolder.Items.Add();
    mailItem.To = recipientAddress;
    mailItem.Subject = "Automated mail from Redemption";

    var accounts = session.Accounts.Cast<RDOAccount>().ToList();
    Console.WriteLine(
        "Accounts in Outlook: " + string.Join(",", accounts.Select(_ => _.Name)));
    var account =
        accounts
            .FirstOrDefault(
                _ => _.Name.Equals(
                    accountNameForSending,
                    StringComparison.CurrentCultureIgnoreCase));
    mailItem.Account = account ?? throw new NullReferenceException(nameof(account));
    const string defaultStr = "default";
    mailItem.Body = $"Sent from {mailItem.Account?.Name ?? defaultStr} account.";
    mailItem.Send();
    mailItem = null;
    targetFolder = null;
    session = null;
}

Подводный камень в том, что отправитель не видит, что что-то пошло не так; если они сохраняют электронную почту, она очень хорошо помечается альтернативной учетной записью, хотя она и выходит с использованием учетной записи по умолчанию.

...