我正在尝试从客户端PC(即Windows)发送带有附件的电子邮件,并将附件保存到同一客户端PC上的本地文件夹中。我查看了几个替代方案,例如MailDrop(电子邮件到Dropbox)和Outlook 2003 Interop库 - 但我想确保以最佳方式实现这一点。
有没有人对简单/优雅的解决方案有任何不同的想法?
答案 0 :(得分:0)
只要您知道Outlook将安装在所有客户端上,Outlook解决方案就能很好地运行。您可以创建一个文件并保存,然后在您的Outlook互操作中,您只需附加和发送即可。您没有指定您正在使用的工具,但这里是我在C#中用于Outlook的基本电子邮件创建方法(其中OutlookSetup.OutlookApp只是一个静态方法,它返回当前打开的Outlook应用程序实例或创建一个新的Outlook应用程序不开放)。否则,这里有几个使用SmtpClient实现类似目的的例子。
public EmailMessage(EmailInfo emailInfo, string filenameToAttach=null)
{
Message = OutlookSetup.OutlookApp.CreateItem(OL.OlItemType.olMailItem);
Message.To = emailInfo.To;
Message.CC = emailInfo.Cc ?? "";
Message.Subject = emailInfo.Subject;
if (filenameToAttach != null)
{
Message.Attachments.Add(filenameToAttach);
}
}