繁体   English   中英

出现错误:-System.net.mail.SmtpException

[英]Getting error:-System.net.mail.SmtpException

运行以下代码时,我得到

未处理的异常:System.Net.Mail.SmtpException

此代码用于发送邮件。 它可以在Windows应用程序上正常运行,但是在Android版Mono上出现运行时错误。 Smeone告诉我System.net.mail是System.dll程序集的一部分,但我不知道如何在我的MonoDroid应用程序中使用它。

其他名称空间是:“使用System.Net.Mail;”

 string username = "abc@xyz.com";
 string password = "1234567890";
 System.Net.NetworkCredential nc = new
 System.Net.NetworkCredential(username, password);
 MailMessage MailMessage = new MailMessage();
 MailMessage.To.Add("pqr@xyz.com");
 MailMessage.Subject = "here is the subject";
 MailMessage.From = new System.Net.Mail.MailAddress("abc@xyz.com");
 MailMessage.Body = "Application run time was ";
 System.Net.Mail.SmtpClient SmtpClient = new System.Net.Mail.SmtpClient("
 smtp.gmail.com");
 SmtpClient.UseDefaultCredentials = false;

 SmtpClient.EnableSsl = true;
 SmtpClient.Credentials = nc;
 SmtpClient.Port = 587;
 SmtpClient.Send(MailMessage);

在Windows上运行良好。 我正在为Android 4.2.7,Visual Studio 2010运行Mono。

尝试以下一项作为测试,然后将其更改为您的情况。如果它起作用,好运。

using System;
using System.Net.Mail;
using System.Collections.Generic;
using System.Text;
using Gtk;
using GtkSharp;
using GLib;
using System.Net;
using System.Security.Cryptography.X509Certificates;
using System.Net.Security;

namespace KentSoft
    {
    class  printTest : Window
    {
    public  printTest() : base("Kent_Calisma")
    {
    try{
    MailMessage mail = new MailMessage();
    SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
    mail.From = new MailAddress("yourmailadress@gmail.com");
    mail.To.Add("destinationmailadress@gmail.com");
    mail.Subject = "TEST";
    mail.Body = "This is for testing SMTP mail from GMAIL";
    SmtpServer.Port = 587;

    SmtpServer.Credentials = new System.Net.NetworkCredential("gmailusername without @gmail.com", "gmailpassword");

    SmtpServer.EnableSsl = true;
    ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return true; };

    SmtpServer.Send(mail);

}

catch(Exception e){
    Console.WriteLine("Ouch!"+e.ToString());
  }
}

public static void Main()
    {
   Application.Init();
   new printTest();
   Application.Run();
          }
        }
      }

您可以从原始帖子中获取更多详细信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM