如何通过电子邮件在交换服务器上发送.zip附件?

时间:2010-08-16 12:52:08

标签: c# email exchange-server attachment

地狱人,

我在csharp中编码发送一封包含.zip文件的电子邮件(里面有htmls和css)。当我检查收到的邮件时,事实上,该附件不是.zip文件,而是成为一个txt文件并具有:

FILE QUARANTINED

The original contents of this file have been replaced with
this message because of its characteristics.
File name: 'xxxxxxx_Result.zip'
Virus name: 'Large uncompressed size'

交换服务器已阻止zip文件。我正在使用CDO创建和发送电子邮件。

我尝试使用代码发送带有WINZIP生成的zip文件的邮件,没有问题,然后我尝试使用outlook发送带有我的代码生成的zip文件的邮件(我使用sharpziplib库),问题发生了......

如何正确发送附件?非常感谢提前!

阿伦

3 个答案:

答案 0 :(得分:2)

我在网络上发送电子邮件遇到类似问题。我发现使用其他压缩格式(例如7-zip(.7z))足以通过过滤器获取我的内容。如果块不是严格的大小,这可以解决问题。

答案 1 :(得分:1)

看起来您的邮件服务器或垃圾邮件服务已删除您的附件并将其替换为txt文件,听起来您的代码很好,您需要与管理员讨论邮件过滤器和发送大小配额!

答案 2 :(得分:1)

对于遇到此问题的任何人,这是一个解决方案。您必须明确设置zipentry的文件大小。

ZipEntry newEntry = new ZipEntry(fileName);
newEntry.DateTime = DateTime.Now;
newEntry.Size = fileData.Length; // setting data size