C# 我的C代码可以';无法发送邮件,但outlook 2k7可以

C# 我的C代码可以';无法发送邮件,但outlook 2k7可以,c#,sendmail,smtpclient,C#,Sendmail,Smtpclient,我已经写了C代码来发送邮件(我的公司邮件)。我试过使用gmail,但在我的公司邮件上却不行 我确信smtp服务器正在运行,端口465已打开,因为我可以使用相同的帐户telnet smtp.domain 465 ok通过outlook 2k7发送邮件 当我运行代码时,它抛出异常“System.Net.Mail.SmtpException:操作超时” 这是我的c#代码: 任何人知道或有相同的问题,请帮助我。非常感谢 尝试在SmtpClient实例中更改设置EnableSsl=false。您可以更改此

我已经写了C代码来发送邮件(我的公司邮件)。我试过使用gmail,但在我的公司邮件上却不行

我确信smtp服务器正在运行,端口465已打开,因为我可以使用相同的帐户telnet smtp.domain 465 ok通过outlook 2k7发送邮件

当我运行代码时,它抛出异常“System.Net.Mail.SmtpException:操作超时”

这是我的c#代码:


任何人知道或有相同的问题,请帮助我。非常感谢

尝试在SmtpClient实例中更改设置EnableSsl=false。

您可以更改此代码并重用此代码:

        public static void sendEmail(string address, string subject, string message)
        {
            string email = "yourEmail";
            string password = "yourPass";

            var loginInfo = new NetworkCredential(email, password);
            var msg = new MailMessage();
            var smtpClient = new SmtpClient("smtp.gmail.com", portNumber);

            msg.From = new MailAddress(email);
            msg.To.Add(new MailAddress(address));
            msg.Subject = subject;
            msg.Body = message;
            msg.IsBodyHtml = true;

            smtpClient.EnableSsl = true;
            smtpClient.UseDefaultCredentials = false;
            smtpClient.Credentials = loginInfo;
            smtpClient.Send(msg);
        }

它是桌面应用程序吗?如果是这样,您是否以管理员身份运行它?是的。我曾尝试以管理员权限运行,但问题仍然存在。在我更改属性EanableSsl=FALSE后,问题仍然存在。我尝试了您的代码(Babak Abad),但它仍然引发上述异常。我想smtp服务器因为安全问题拒绝了我的连接。我的代码可能不被信任为outlook 2k7!这是我的选择。我现在正在我的项目中使用这段代码!因此,您的防火墙或防病毒软件可能会阻止您的应用程序,outlook除外。检查您的密码和服务器字符串。然后检查您的服务器是否允许从自定义程序发送电子邮件?我知道如何编辑gmail设置。如果你使用gmail服务器,我可以帮你编辑。
        public static void sendEmail(string address, string subject, string message)
        {
            string email = "yourEmail";
            string password = "yourPass";

            var loginInfo = new NetworkCredential(email, password);
            var msg = new MailMessage();
            var smtpClient = new SmtpClient("smtp.gmail.com", portNumber);

            msg.From = new MailAddress(email);
            msg.To.Add(new MailAddress(address));
            msg.Subject = subject;
            msg.Body = message;
            msg.IsBodyHtml = true;

            smtpClient.EnableSsl = true;
            smtpClient.UseDefaultCredentials = false;
            smtpClient.Credentials = loginInfo;
            smtpClient.Send(msg);
        }