c #Outlook动态自动化SendUsingAccount失败

时间:2017-03-03 11:03:55

标签: c# outlook automation

我正在尝试使用用户指定的帐户从我的应用程序发送电子邮件。 出于某种原因,SendUsingAccount保持为null并使用默认帐户。

我正在使用后期绑定来防止版本冲突。 这是使用VS2012,.net framework 4.5

dynamic email = Activator.CreateInstance(Type.GetTypeFromProgID("Outlook.Application"));
dynamic mail = email.CreateItem(0);

        //setup main details
        mail.To = "me@gmail.com";
        mail.Subject = "Test Email from C#";
        mail.HTMLBody = "<p>Is this thing on?</p><br/>";

        //get account required
        dynamic acc = email.Session.Accounts;
        dynamic useAcc = acc[1];
        for (int i = 1; i <= acc.Count; i++)
        {
            if (acc[i].DisplayName.ToString().ToLower() == "test@office.com")
            {
                useAcc = acc[i];
                break;
            }
        }
        acc = null;

        mail.SendUsingAccount = useAcc;

        mail.Send()

它找到了正确的帐户并且看起来正在设置它,但它拒绝使用默认帐户以外的帐户(这与我正在检查的帐户不同)

使用早期绑定尝试相同的工作正常

任何帮助将不胜感激

0 个答案:

没有答案