【问题标题】:Send document with default e-mail client [closed]使用默认电子邮件客户端发送文档 [关闭]
【发布时间】:2012-12-21 20:36:28
【问题描述】:

例如,当您在 Web 浏览器中单击链接时,它会自动打开安装在您 PC 上的默认电子邮件客户端并填写该电子邮件地址。我需要执行类似的操作,但带有文件附件。它看起来像软件界面中的“使用默认电子邮件客户端发送文件”选项。

是否有任何可用的 API?

【问题讨论】:

标签: .net windows api email


【解决方案1】:

您所说的功能使用mailto: URL 方案,在此RFC 中进行了描述。

这对附件没有规定,所以答案是,没有这样的API。

您可以创建自己的网络表单并从服务器端发送电子邮件 - 这将为您提供对电子邮件消息所需的所有控制权。

【讨论】:

    【解决方案2】:

    我不知道的 API。对于使用您可以使用的地址启动电子邮件客户端的简单解决方案:

    System.Diagnostics.Process.Start("mailto:"+emailAddress);
    

    但它仅适用于简单的单个电子邮件,并且限制是显而易见的。确保捕获可能引发的异常。

    更新 我还没有看到附件要求。在这种情况下无能为力,但如果您安装了 Outlook 和互操作,无论如何这里是示例代码。也许它可以帮助你:

     Microsoft.Office.Interop.Outlook.Application app = 
             new Microsoft.Office.Interop.Outlook.Application();
     Microsoft.Office.Interop.Outlook.MailItem mailItem=
             app.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);         
     mailItem.Attachments.Add(filePath);
     // ....
    

    【讨论】:

      猜你喜欢
      • 2010-10-23
      • 1970-01-01
      • 1970-01-01
      • 2014-07-11
      • 2014-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-19
      相关资源
      最近更新 更多