2010-07-14 6 views
4

J'essaie d'envoyer des courriels de mon application. Je peux envoyer un email par smtp.mail.yahoo.com, cependant pendant que j'essaye d'envoyer l'email avec gmail (smtp.gmail.com) il échoue.CF.NET SMTP - envoyer un courriel avec Gmail

J'utilise SocketPro.

J'ai essayé d'utiliser aussi openSSL mais je ne sais pas comment l'utiliser!

Toute personne à qui vous avez un échantillon de code que vous pouvez me fournir pour envoyer un e-mail depuis Gmail?

Je donne les résultats suivants:

USocketClass m_ClientSocket; 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("EHLO smtp.gmail.com \r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("AUTH LOGIN")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes(EncodeTo64(myUser))); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes(EncodeTo64(myPass))); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("MAIL FROM: <[email protected]>")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("RCPT TO: <[email protected]>")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("DATA")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("From: <[email protected]>")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("To: <[email protected]>")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("Subject: Test subject")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("My body test")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes(".")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("\r\n")); 
m_ClientSocket.Send(Encoding.UTF8.GetBytes("QUIT")); 

pouvez-vous me aider?

Merci.

Andrew

Répondre

1

Pourquoi ne pas utiliser le client .Net smtp ? (Dans l'espace de noms System.Net.Mail)

 SmtpClient client = new SmtpClient(); 
     client.Credentials = new System.Net.NetworkCredential("username", "password"); 
     client.Host = "some.smtpserver.com"; 
     client.Send(from, to, subject, body); 
Questions connexes