111,098
社区成员




验证输入的正确性
public static bool isEmail( string inputEmail )
{
inputEmail = NulltoString( inputEmail );
string strRegex = @"^( [a-zA-Z0-9_\-\.]+ )@( ( \[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\. )|( ( [a-zA-Z0-9\-]+\. )+ ) )( [a-zA-Z]{2,4}|[0-9]{1,3} )( \]? )$";
Regex re = new Regex( strRegex );
if ( re.IsMatch( inputEmail ) )
return ( true );
else
return ( false );
}
验证邮件地址的正确性:
string[] host = ( address.Split( @ ) );
string hostname = host[1];
IPHostEntry IPhst = Dns.Resolve( hostname );
IPEndPoint endPt = new IPEndPoint( IPhst.AddressList[0], 25 );
Socket s= new Socket( endPt.AddressFamily, SocketType.Stream,ProtocolType.Tcp );
s.Connect( endPt );
//Attempting to connect
if( !Check_Response( s, SMTPResponse.CONNECT_SUCCESS ) )
{
s.Close( );
return false;
}
//HELO server
Senddata( s, string.Format( "HELO {0}\r\n", Dns.GetHostName( )) );
if( !Check_Response( s, SMTPResponse.GENERIC_SUCCESS ) )
{
s.Close( );
return false;
}
//Identify yourself
//Servers may resolve your domain and check whether you are listed in BlackLists etc.
Senddata( s, string.Format( "MAIL From: {0}\r\n","testexample@deepak.portland.co.uk" ) );
if( !Check_Response( s, SMTPResponse.GENERIC_SUCCESS ) )
{
s.Close( );
return false;
}
//Attempt Delivery ( I can use VRFY, but most SMTP servers only disable it for security reasons )
Senddata( s, address );
if( !Check_Response( s, SMTPResponse.GENERIC_SUCCESS ) )
{
s.Close( );
return false;
}
return ( true );
//现在可以了邮件地址格式错误抛出FormatExectpion
//发送失败抛出SmtpExecption
try
{
System.Net.Mail.MailAddress from = new System.Net.Mail.MailAddress("fenglaijunx@qq.com");
System.Net.Mail.MailAddress to = new System.Net.Mail.MailAddress("fenglaijunx@126.com");
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(from, to);
message.Body = "This mail send from C# application";
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
client.Host = "http://www.126.com";
client.Send(message);
}
catch (FormatException)
{
MessageBox.Show("电子邮件格式不符合要求!");
}
catch (System.Net.Mail.SmtpException)
{
MessageBox.Show("邮件发送失败!");
}
try
{
System.Net.Mail.MailAddress from = new System.Net.Mail.MailAddress("from126");
System.Net.Mail.MailAddress to = new System.Net.Mail.MailAddress("to126");
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(from, to);
message.Body = "This mail send from C# application";
}
catch (FormatException)
{
MessageBox.Show("电子邮件格式不符合要求!");
}