2012-02-15 169 views
1

我试图从附件中的客户端PC(即Windows)发送电子邮件,并将附件保存到同一客户端PC上的本地文件夹中。我看了一些其他的选择,比如MailDrop(email to dropbox)和Outlook 2003 Interop库 - 但是要确保我正在实现这个最好的方式。将电子邮件附件发送到本地文件夹

有没有人对简单/优雅的解决方案有任何不同的想法?

回答

0

只要您知道Outlook将安装在所有客户端上,Outlook解决方案就可以很好地工作。您可以创建一个文件并保存,然后在您的Outlook Interop中添加并发送。您没有指定使用的工具,但这里是我在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); 
    } 
} 
+0

Thanks Tod!我很确定我们会在所有客户端上安装Outlook,所以我会试一试。 – ktaylor 2012-03-15 19:12:17

+0

我刚碰到一件奇怪的事。如果您在管理员模式下运行应用,则会导致Outlook出现问题。您不应该需要以管理员模式运行,但我们将其作为临时解决方案来执行。这似乎是我的一个办公缺陷。我只需在管理员模式下运行Word,然后尝试执行文件 - >发送并将其作为电子邮件附件发送,即可在我的应用程序外复制。 – Tod 2012-03-15 23:00:10

相关问题