5

我正在尝试发送带有高达(1MB,2MB)的大尺寸附件的邮件。但发送邮件失败。(发送到 Google Apps)为:

MailItemEntry[] entries = new MailItemEntry[1];
String EmlPath = "C:\\testemail.eml";                                        
String msg = File.ReadAllText(EmlPath);
entries[0] = new MailItemEntry();
entries[0].Rfc822Msg = new Rfc822MsgElement(msg);

如何将附件分成多个部分?

将此 EML 迁移到 Google 应用程序时遇到的异常是:{“请求已中止:请求已取消。”}

谷歌论坛上的问题

4

4 回答 4

2

一种解决方案可能是使用多部分 zip(或其他支持类似概念的压缩格式)文件并在单独的电子邮件中发送每个文件。

至少,GZip 也支持多部分压缩,尽管我认为 zip 或 gz 在 .NET 中对多部分文件的支持都不是很好。

您最好的选择可能是#ziplib

于 2010-05-19T11:50:56.180 回答
0

如果您尝试发送,例如 2MB WMV 文件,而您的邮件网关只允许 ~500kb 附件,这将无法正常工作。您不能任意拆分 WMV 文件 - 电子邮件收件人将需要相同的软件来“加入”备份文件。

有诸如 WinRAR 之类的存档实用程序允许您将创建的存档拆分为可配置大小的块。然后,您可以在一封电子邮件中发送大量附件,也可以发送大量带有单个附件的电子邮件。

一个更简单的解决方案是将文件上传到某处并在电子邮件中放置一个链接以便稍后下载文件。这可能是您自己的 HTTP 或 FTP 服务器,或者有大量的第三方服务可以让您这样做,YouSendIt似乎很受欢迎。

于 2010-05-19T12:00:14.503 回答
0

在大家大开杀戒之前,原帖人真的能贴出他们看到的异常文字吗?

这可能是任何事情,从 Web 服务器超时,到邮件服务器不接受大附件,再到没有适当的权限。

在没有看到异常文本和堆栈跟踪的情况下,这些模糊的问题可能是徒劳的。

不要试图粗鲁或任何事情,但问题提供的信息越多,回答就越容易。

于 2010-05-19T15:40:30.647 回答
0

我知道这并不完全是一个答案,但在我的测试中,我能够毫无问题地发送最大 3MB 的附件。您确定您没有遇到 smtp 主机对出站附件大小施加的限制吗?

于 2010-05-19T12:03:12.343 回答