C#实现SMTP 服务器,使用TCP 命令实现 using System; using System.Text; using System.IO; using System.Net; using System.Net.Sockets; using System.Collections; namespace SkyDev.Web.Mail { public enum MailFormat{Text,HTML}; public enum MailPriority{Low=1,Normal=3,High=5}; #region Class mailAttachments public class MailAttachments { private const int MaxAttachmentNum=10; private IList _Attachments; public MailAttachments() { _Attachments=new ArrayList(); } public string this[int index] { get { return (string)_Attachments[index];} } ///
/// 添加邮件附件 /// ///
附件的绝对路径 public void Add(params string[] filePath) { if(filePath==null) { throw(new ArgumentNullException("非法的附件")); } else { for(int i=0;i
/// 添加一个附件,当指定的附件不存在时,忽略该附件,不产生异常。 /// /// 附件的绝对路径 public void Add(string filePath) { //当附件存在时才加入,否则忽略 if (System.IO.File.Exists(filePath)) { if (_Attachments.Count /// MailMessage 表示 SMTP 要发送的一封邮件的消息。 /// public class MailMessage { private const int MaxRecipientNum=10; public MailMessage() { _Recipients=new ArrayList();//收件人列表 _Attachments=new MailAttachments();//附件 _BodyFormat=MailFormat.Text;//缺省的邮件格式为Text _Priority=MailPriority.Normal; _Charset="GB2312"; } /// /// 设定语言代码,默认设定为GB2312,如不需要可设置为"" /// public string Charset { get { return _Charset;} set { _...