Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/32: Рейтинг темы: голосов - 32, средняя оценка - 4.97
4 / 4 / 1
Регистрация: 13.11.2011
Сообщений: 168
1

Нужен код для отправки почты

19.01.2012, 23:01. Показов 6432. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет. Подскажите люди какой код для отправки почты?? на форуме посмотрел но везде только готовые коды, и не совсем понятно, а мне нужен код, using которые нужно подключать, и т.д...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.01.2012, 23:01
Ответы с готовыми решениями:

Возможно ли упростить код для асинхронной отправки электронной почты
Пишу консольное приложение для отправки писем. За раз отправляется около 100 писем с отчетами....

Отправка почты: "необработанное исключение отправки почты в system.Dll"
подскажите - вот пример на C#, но он мне пишет "необработанное исключение отправки почты в...

Php код для отправки смс на почту - проверка валидности почты
привет всем )) есть php код для отправки смс на почту все нормально работает <?php $name =...

Не работает код отправки почты
У меня есть файл php в котором функция: function afl_send_mail() { $title = 'Недвижимость. Новая...

19
Неадекват
1492 / 1230 / 246
Регистрация: 02.04.2010
Сообщений: 2,789
19.01.2012, 23:46 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Web;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
void SendData()
        {
            //Авторизация на SMTP сервере
            SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 25);//для авторизации на мыл.ру
            Smtp.Credentials = new NetworkCredential("мыло", "пароль");
            //Smtp.EnableSsl = false;
 
            //Формирование письма
            MailMessage Message = new MailMessage();
            Message.From = new MailAddress("мыло_кому");
            Message.To.Add(new MailAddress("мыло_кому_или_что_приколет"));
            Message.Subject = "Заголовок";
            Message.Body = string.Format("Сообщение");
            Smtp.Send(Message);//отправка
 
        }
2
4 / 4 / 1
Регистрация: 13.11.2011
Сообщений: 168
20.01.2012, 01:48  [ТС] 3
а как файл прикрепить?

Добавлено через 16 минут
sender address must match authenticated user выбивает крит

Добавлено через 1 час 29 минут
Все разобрался, спасибо....
0
3 / 3 / 1
Регистрация: 11.01.2012
Сообщений: 19
20.01.2012, 09:56 4
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//Авторизация на SMTP сервере
            SmtpClient Smtp = new SmtpClient("АДРЕС", 25);
            Smtp.Credentials = new NetworkCredential("МЫЛО", "ПАРОЛЬ");
            //Smtp.EnableSsl = false;
 
            //Формирование письма
            MailMessage Message = new MailMessage();
            Message.From = new MailAddress("");
            Message.To.Add(new MailAddress(""));
            Message.Subject = "";
            Message.Body = " ";
 
            //Прикрепляем файл
            string file = "";
            try
            {
                Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet);
 
                Message.Attachments.Add(attach);
                Smtp.Send(Message);//отправка
                Console.WriteLine("Óøëî â" + Message.From);
            }
            catch (Exception ex)
            {
                Console.WriteLine("В процессе...");
            }
 
        }
        //
0
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
20.01.2012, 12:04 5
А c яндексом работает?
0
77 / 58 / 8
Регистрация: 10.03.2011
Сообщений: 354
20.01.2012, 12:34 6
Да, главное указать smtp сервер и порт для Яндекса
0
4 / 4 / 1
Регистрация: 13.11.2011
Сообщений: 168
20.01.2012, 12:40  [ТС] 7
C#
1
SmtpClient Smtp = new SmtpClient("smtp.yandex.ru", 25)
0
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
20.01.2012, 13:02 8
у меня не работает так

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public static void Send()
        {
            SmtpClient smtpConfirmation = new SmtpClient("smtp.yandex.ru", 25);
            smtpConfirmation.Credentials = new NetworkCredential("емаил отправителя например [email]2222@yandex.ru[/email]", "пароль от почты отправителя например 1111");
     
            
 
            MailMessage mmConfirmation = new MailMessage();
            mmConfirmation.From = new MailAddress("почта отправителя (я пробывал сюда и получателя вписывать) пример [email]2222@yandex.ru[/email]");
            mmConfirmation.To.Add("почта кому отправляем пример [email]3333@yandex.ru[/email]");
            mmConfirmation.Subject = string.Format("Hello");
            mmConfirmation.Body = string.Format("Hello world!");
            try
            {
                smtpConfirmation.Send(mmConfirmation);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
        }
1
4 / 4 / 1
Регистрация: 13.11.2011
Сообщений: 168
20.01.2012, 13:18  [ТС] 9
порт не 25 а 465 попробуй так
0
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
20.01.2012, 13:23 10
Не помогает ((
1
77 / 58 / 8
Регистрация: 10.03.2011
Сообщений: 354
20.01.2012, 13:30 11
C#
1
2
3
SmtpClient Smtp = new SmtpClient("АДРЕС", 465);
Smtp.Credentials = new NetworkCredential("МЫЛО", "ПАРОЛЬ");
Smtp.EnableSsl = true; //перевести в тру
//Взято с сайта яндекса
Исходящие сообщения/Outgoing mail (SMTP) необходимо указать адрес сервера smtp.yandex.ru, и подключаться по безопасному соединению SSL через порт 465. В случае, если вы не можете воспользоваться безопасным соединением, вы можете подключиться к SMTP-серверу по портам 25 или 587

Попроюуйте так
0
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
20.01.2012, 13:43 12
На этот раз хоть ошибку вывело
Сбой при отправке сообщения электронной почты
0
77 / 58 / 8
Регистрация: 10.03.2011
Сообщений: 354
20.01.2012, 13:46 13
Попробуйте, поекперементировать с положением тру фелс и номером порта.... - к сожалению протестировать не могу.... вчера переставлял винду, сейчас только ставлю студию..
0
4 / 4 / 1
Регистрация: 13.11.2011
Сообщений: 168
20.01.2012, 13:54  [ТС] 14
какая ошибка
0
29 / 58 / 6
Регистрация: 10.01.2011
Сообщений: 1,231
20.01.2012, 13:57 15
Цитата Сообщение от Intestyx Посмотреть сообщение
какая ошибка
Сбой при отправке сообщения электронной почты


Цитата Сообщение от daruwanov Посмотреть сообщение
Попробуйте, поекперементировать с положением тру фелс и номером порта....
Попробую
0
12 / 12 / 2
Регистрация: 11.04.2011
Сообщений: 76
15.05.2012, 10:24 16
у меня тоже не работает VS2008 выдает ошибку CLR не удалось перейти из COM-контекста 0x1107008 в COM-контекст 0x1107178 за 60 секунд. Наиболее вероятно, что поток, владеющий контекстом/апартаментом назначения, находится в режиме ожидания или выполнения очень длительной операции без прокачки сообщений Windows. Обычно эта ситуация отрицательно влияет на производительность и даже может привести к зависанию приложения или чрезмерному расходованию памяти. Чтобы избежать этой проблемы, все потоки однопоточного апартамента (STA) должны использовать примитивы ожидания для прокачки (например, CoWaitForMultipleHandles) и периодически прокачивать сообщения во время длительных операций.
0
3 / 3 / 1
Регистрация: 14.05.2012
Сообщений: 14
15.05.2012, 10:48 17
Вчера делал отправку e-mail'a с формы заказа админу и клиенту. Для этого создал метод sendMail

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public void sendMail(string mail, string theme, string message)
        {
            SmtpClient Smtp = new SmtpClient("smtp.yandex.ru", 25);
            //авторизация на своем e-mail
            //admin_mail и admin_password заданы как поля класса
            Smtp.Credentials = new NetworkCredential(admin_mail, admin_password);
            Smtp.EnableSsl = false;
            MailMessage msg = new MailMessage();
            msg.From = new MailAddress(admin_mail);//от кого
            msg.To.Add(new MailAddress(mail));//кому
            msg.Subject = theme;
            msg.Body = message;
            Smtp.Send(msg);
        }
Не забудьте подключить библиотеки
C#
1
2
3
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
0
12 / 12 / 2
Регистрация: 11.04.2011
Сообщений: 76
15.05.2012, 11:31 18
вылетает прежняя ошибка может я что то не так понял про admin_mail и admin_password -это просто строковые переменные или нужен реальный адрес отправителя и его пароль попробовал сам себе отправить сообщение ввел свой пароль но вылетает прежняя ошибка
0
43 / 44 / 12
Регистрация: 01.09.2011
Сообщений: 213
15.05.2012, 13:45 19
admin_mail - это адресс логина на яндексе, должен быть с приставкой почтового домена "vasya@yandex.ru"
admin_password - это пароль учетки на яндекс "12345"
mail - адрес кому отправляем, должен быть с приставкой почтового домена "vasy26@mail.ru"
Код рабочий 100%
0
3 / 3 / 1
Регистрация: 14.05.2012
Сообщений: 14
15.05.2012, 20:42 20
Вот как я использовал отправку почты в feedback'e на ASP.NET-сайте:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public partial class Feedback : System.Web.UI.Page
    {
        //в полях класса указываем нужную информацию. user_mail получаем из TextBox'a Email.Text
        private string user_mail = "";
        private string admin_mail = "yourmail@yandex.ru";
        private string admin_password = "your_password";
        private string user_theme = "Message from site!";
        private string admin_theme = "New ask!";
        private string user_Message = "Thank you!";
        private string admin_Message = "";
 
        protected void Page_Load(object sender, EventArgs e)
        {
 
        }
 
        protected void SendButton_Click(object sender, EventArgs e)
        {
            user_mail = Email.Text;
            admin_Message = "Вопрос от: " + Name.Text+"\nE-mail: "+Email.Text + "\n\nТекст вопроса: " + Ask.Text;
            sendMail(user_mail, user_theme, user_Message);
            sendMail(admin_mail, admin_theme, admin_Message);
            clear();
        }
        protected void sendMail(string mail, string theme, string message)
        {
            SmtpClient Smtp = new SmtpClient("smtp.yandex.ru", 25);
            Smtp.Credentials = new NetworkCredential(admin_mail, admin_password);
            Smtp.EnableSsl = false;
            MailMessage msg = new MailMessage();
            msg.From = new MailAddress(admin_mail);
            msg.To.Add(new MailAddress(mail));
            msg.Subject = theme;
            msg.Body = message;
            Smtp.Send(msg);
        }
        protected void clear()
        {
            Name.Text = "";
            Email.Text = "";
            Ask.Text = "";
        }
    }
0
15.05.2012, 20:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2012, 20:42
Помогаю со студенческими работами здесь

Alias для отправки почты
Подскажите, можно ли создать алиасы, чтобы их использовать следующим образом: alias md = 'echo...

Настройки для отправки почты
Изучаю auth - создание аккаунтов, аутентификация, сброс пароля и прочее. И всё отлично, за...

Команда для отправки почты
Доброго времени Всем. Сразу прошу прощения за возможно глупые вопросы, т.к. с Linux работаю как...

Кнопка для отправки почты
Народ подскажите пожалуйста возможно ли во Флеш сделать кнопку чтоб при нажатии выскакивало почта....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru