0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16

Ошибка при отправке почты через smtp.rambler.ru

01.12.2016, 17:35. Показов 8433. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе, все, время суток!
Проблема: отправляю почтовое сообщение через TIdSMTP сервер. Пример взял уж не помню где и когда, с ним раньше все было ок. Ну опробовал - хорошо! Потом срочно сменили тему... Сейчас достал, пробую и получаю Еррор!!

535 5.7.0 Incorrect username/password or rate limit exceeded or account blocked or protocol not enabled

Ну username/password - это сами понимаете, а с остальным - непонятки! У меня 6 Билдер в стандартной комплектации. Нарыл, что проблемы могут быть из-за Indy, лучше бы Indy10. Но!!!. Раньше то все работало! Даже мессаги до сих пор лежат на приемной стороне. Отправлял с Рамблера, все порты перепробовал. Через браузер почта нормально. Помогите, кому чего не жалко!

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
void __fastcall TForm1::Button7Click(TObject *Sender)
{
    // TIdEMailAddressItem *v;
    IdMessage1->CharSet = "Win-1251"; // rus
    IdMessage1->ContentTransferEncoding = "8bit";
    IdMessage1->ContentType = "text/plain";
 
    IdMessage1->Recipients->EMailAddresses = "login@yandex.ru";
    // IdMessage1->CCList->EMailAddresses = "адрес-куда-копию";
    IdMessage1->Subject = "From IA";
    IdMessage1->Body->Text = "oiupo";
 
    IdMessage1->From->Name = "IA";
    IdMessage1->From->Address = "iapost";
    // IdMessage1->ReplyTo->EMailAddresses = "адрес-для-ответа";
 
    IdSMTP1->Host = Edit1->Text.c_str();
    IdSMTP1->Port = Edit2->Text.ToInt();
    IdSMTP1->UserId = "mylogin@rambler.ru";
    IdSMTP1->Password = "mypasswrd";
    IdSMTP1->AuthenticationType = atLogin; // atLogin, atNone
 
    Memo1->Lines->Clear();
 
    Memo1->Lines->Add("Try to connect...");
    IdSMTP1->Connect();
 
    // До этого места доходит (эвент по коннект имеется)
    // а далее та ошибка, причем мгновенно!
 
    IdSMTP1->Authenticate();
    Memo1->Lines->Add("Authenticate");
 
    IdSMTP1->Send(IdMessage1);
    Memo1->Lines->Add("Send");
 
    IdSMTP1->Disconnect();
    Memo1->Lines->Add("DisConnect");
}
Может что в компе? Но почта то нормально работает, может у Рамблера? Нежели в голове...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.12.2016, 17:35
Ответы с готовыми решениями:

Какой SMTP указывать при отправке почты на разные домены
Пытаюсь отправить сообщение на 2 почты . Пример : string smtpHost = "smtp.хост.ru(com)"; int...

Регистратор почты на Rambler: При открытии капчи появляется ошибка
Здравствуйте. Помогите пожалуйста доделать регер почты на рамблере. Не пойму в чем дело. При открытии капчи вылазит ошибка. ...

Ошибка отправки почты через smtp GMail
Товарищи, такая проблема - пытаюсь отправить почту через smtp с сайта. Вот кусок кода: static function sendMail($data){ ...

25
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 19:35
Цитата Сообщение от IA52 Посмотреть сообщение
C++
1
2
IdSMTP1->Host = Edit1->Text.c_str(); 
IdSMTP1->Port = Edit2->Text.ToInt();
Что тут вводится?

Надеюсь используется SSL ?
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
01.12.2016, 21:41  [ТС]
Ой, да!
Это уж я для отладки...
Там в хост "smtp.rambler.ru", а в порт 25. И 465 пробовал и другие с тем же успехом
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 21:43
Цитата Сообщение от IA52 Посмотреть сообщение
а в порт 25. И 465 пробовал и другие с тем же успехом
Тыкать наугад не нужно, нужно ввести именно те данные которые указаны в настройках на сайте почтового сервиса.

Еще раз нужно подключить TIdSSLIOHandlerSocketOpenSSL обязательно.
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
01.12.2016, 21:44  [ТС]
SSL - нет, раньше же работало
Да, и спасибо, что откликнулись.
А что с SSL присоветуете?
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 21:51
Цитата Сообщение от IA52 Посмотреть сообщение
SSL - нет, раньше же работало
Да, и спасибо, что откликнулись.
А что с SSL присоветуете?
То было раньше, сейчас почти все сервисы работают только через SSL

Добавлено через 1 минуту
И
Цитата Сообщение от IA52 Посмотреть сообщение
У меня 6 Билдер в стандартной комплектации.
Советую сменить на новый билдер, с нормальной версией Indy10+.
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
01.12.2016, 21:52  [ТС]
А SSL как использовать? (Извините за тупость - несколько иной профиль). Там в классе его некуда приаттачить.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 21:54
Воспользуйтесь поиском по форуму, тема избитая.
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
01.12.2016, 21:54  [ТС]
Это я давно понял. Видимо придется. Попробую отдельно поменять на Indy10 компоненту. Хлопотно!
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 22:00
Введите настройки исходящей почты (указаны ниже) и нажмите кнопку «Далее».

имя пользователя: адрес электронной почты, например primer@rambler.ru;
пароль: пароль от вашей электронной почты;
сервер SMTP: smtp.rambler.ru;
тип защиты: SSL/TLS;
порт сервера: 465.
http://help.rambler.ru/mail/ma... enty/1392/

Цитата Сообщение от IA52 Посмотреть сообщение
Попробую отдельно поменять на Indy10 компоненту.
Плохая идея, поставить новую среду легче и надежнее.

Добавлено через 3 минуты
У меня есть такой пример (под С++Builder XE3) : http://avazart.zz.mu/2014/10/tidsmtp/
Но возможно что-то потребуется до настроить.
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
01.12.2016, 22:02  [ТС]
Просто не переношу, когда что-то не получается. Уже в самые кишки забрался Вайршарке. А там вообще такое творится...

Добавлено через 1 минуту
Ага, спасибо за пример. Сейчас посмотрю. Но ХЕ3 ...
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
01.12.2016, 22:04
Для отладки удобно пользоваться спец. компонентами https://www.cyberforum.ru/blog... .html#a_11
1
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
02.12.2016, 20:17  [ТС]
Avazart, hi

Indy 10 я поставил быстро, правда со скомпилятыми файлами. С Яндекса отправляется, непонятки с русским текстом и с прикручиванием файла к письму. Но это пришлось отложить. Обозначилась нереентерабельность программы:
Запускаю прогу, жму на батон, письмо ушло, жму еще и получаю ошибку

Error connecting with SSL.error:1408F10B:SSL3GET_RECORD:wrong version number

Если выйти из приложения, потом войти, то опять можно 1 раз отправить.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
02.12.2016, 21:20
Ну мне нечего посоветовать, кроме как перечитать тему с начала.
Ибо вы проигнорировали советы и не смотрели примеры кода.

Да и про SSL https://www.cyberforum.ru/blog... .html#a_10
0
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
03.12.2016, 23:45  [ТС]
Нет, внимательно прошерстил по форуму, кое-что со стороны. Все работает на передачу и файлы аттачатся и русские буквы передаются кроме темы; как ни извращался, но если в поле ->Suject в строке все символы < 0x80, то она ее пихает один в один. Ну это я переживу, а вот теперь с приемом вообще беда, Connect - НЕ ПРОХОДИТ, что только не пробовал

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    IdPOP31->AuthType = patUserPass;
    IdPOP31->Host = "pop.yandex.ru";
    IdPOP31->Port = 995; // 110, 587, 993, 995
    // IdPOP31->Username="******";
    IdPOP31->Username = "логин@yandex.ru";
    // IdPOP31->Username = "логин";
    IdPOP31->Password = "пароль";
    // IdPOP31->
    IdPOP31->ConnectTimeout = 11111;
    IdSSLIOHandlerSocketOpenSSL1->Host = IdPOP31->Host;
    IdSSLIOHandlerSocketOpenSSL1->Port = IdPOP31->Port;
    IdSSLIOHandlerSocketOpenSSL1->Destination = IdPOP31->Host+":"+IntToStr(IdPOP31->Port);
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Method = sslvTLSv1;
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Mode = sslmUnassigned;
    IdPOP31->IOHandler = IdSSLIOHandlerSocketOpenSSL1;
    IdPOP31->UseTLS = utUseImplicitTLS;
    IdPOP31->Connect();
В инете полно жалоб, похоже отрубили доступ по POP3 протоколу, мобыть у кого какие идеи...
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
04.12.2016, 11:52
Цитата Сообщение от IA52 Посмотреть сообщение
Нет, внимательно прошерстил по форуму, кое-что со стороны.
Цитата Сообщение от IA52 Посмотреть сообщение
Все работает на передачу и файлы аттачатся и русские буквы передаются кроме темы; как ни извращался, но если в поле ->Suject в строке все символы < 0x80, то она ее пихает один в один.
В таком случае советую разуть глаза. Я в этой теме кинул ссылку пример, где Subject заполняется.
1
0 / 0 / 0
Регистрация: 16.05.2016
Сообщений: 16
04.12.2016, 12:56  [ТС]
Пропробовал, так это для ХЕ, а у меня 6й, а он не догоняет за TEncoding, ни класс ни намспейс говорит. А с глазами все в рамках приличия. А что там с перекодировкой надо в двух словах? Может сам нарисую? Но и не в этом даже дело, Яндекс не пускает поп3!!!
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
04.12.2016, 13:29
А я что советовал? Я советовал сменить среду, а не заниматься выносом себе мозга.
0
 Аватар для Whatson2
8 / 8 / 1
Регистрация: 06.09.2014
Сообщений: 52
23.12.2016, 11:25
Аналогичная проблема(!), только сегодня обнаружил, раньше всё работало с подключённым SSL (XE2, Indy v10.5.8). Пересылка с ящика на ящик вручную с ПК работает. Получаю через TIdLogEvent ответ:

23.12.2016 11:01:29 - 220 mail.rambler.ru ESMTP ready<EOL>
23.12.2016 11:01:29 - 250-mail.rambler.ru<EOL>250-SIZE 31457280<EOL>250-ENHANCEDSTATUSCODES<EOL>250-8BITMIME<EOL>250-AUTH PLAIN LOGIN<EOL>250 STARTTLS<EOL>
23.12.2016 11:01:29 - 220 2.0.0 Start TLS<EOL>
23.12.2016 11:01:29 - 250-mail.rambler.ru<EOL>250-SIZE 31457280<EOL>250-ENHANCEDSTATUSCODES<EOL>250-8BITMIME<EOL>250 AUTH PLAIN LOGIN<EOL>
23.12.2016 11:01:29 - 334 VXNlcm5hbWU6<EOL>
23.12.2016 11:01:29 - 334 UGFzc3dvcmQ6<EOL>
23.12.2016 11:01:29 - 535 5.7.0 Incorrect username/password or rate limit exceeded or account blocked or protocol not enabled<EOL>


Привожу код:
Кликните здесь для просмотра всего текста
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
void __fastcall TSender::DoSendEmail()
{
    //***************Adjusting sender and receiver properties*****************//
    //std::auto_ptr<TIdSMTP> IdSMTP1(new TIdSMTP(0));                           //Crap if fault in IdSMTP1 methods...
    TIdSMTP *IdSMTP1 = new TIdSMTP(0);
    IdSMTP1->Host = LoadS(CCDHostFrom);                                         //e_Host = smtp.rambler.ru
    IdSMTP1->Port = 465;                                                        //e_Port;
    IdSMTP1->Username = LoadS(CCDUsernameFrom);                                 //e_From_Name; - правильное!
    IdSMTP1->Password = LoadS(CCDUserPasswordFrom);                             //e_From_Pass; - правильный!
 
    std::auto_ptr<TIdSSLIOHandlerSocketOpenSSL> IdSSLIOHandlerSocketOpenSSL1(new TIdSSLIOHandlerSocketOpenSSL(0));
    IdSSLIOHandlerSocketOpenSSL1->Destination             = IdSMTP1->Host + LoadS(MCMColon) + IntToStr(IdSMTP1->Port);
    IdSSLIOHandlerSocketOpenSSL1->Host                    = IdSMTP1->Host;
    IdSSLIOHandlerSocketOpenSSL1->Port                    = IdSMTP1->Port;
    IdSSLIOHandlerSocketOpenSSL1->DefaultPort             = 0;
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Method      = sslvTLSv1;
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->Mode        = sslmUnassigned;
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->VerifyMode  = TIdSSLVerifyModeSet();
    IdSSLIOHandlerSocketOpenSSL1->SSLOptions->VerifyDepth = 0;
 
    IdSMTP1->IOHandler = IdSSLIOHandlerSocketOpenSSL1.get();
    IdSMTP1->UseTLS = utUseExplicitTLS;                                         //TIdUseTLS
    IdSMTP1->AuthType =     satDefault;
    IdSMTP1->ReadTimeout =       15000;
    IdSMTP1->ConnectTimeout =    15000;
    IdSMTP1->OnWorkBegin = (TWorkBeginEvent)&_IdSMTPSendWorkBegin;
    IdSMTP1->OnWork = (TWorkEvent)&_IdSMTPSendWork;
    IdSMTP1->OnWorkEnd = (TWorkEndEvent)&_IdSMTPSendWorkEnd;
    IdSMTP1->OnStatus = (TIdStatusEvent)&_IdSMTPStatus;
    //************End of adjusting sender and receiver properties*************//
    //***************************Compose message *****************************//
    std::auto_ptr<TIdMessage> IdMessage1(new TIdMessage(0));
    //TIdMessage *IdMessage1 = new TIdMessage(0);
    IdMessage1->Clear();
    IdMessage1->From->Address = IdSMTP1->Username;                          //e_From_Adress; - правильное!
    IdMessage1->Recipients->EMailAddresses = LoadS(CCDUserEmailTo);             //UserEmailTo; - правильное!
 
    UnicodeString Subject= LoadS(CCDSubjectReport);
    IdMessage1->ExtraHeaders->AddValue(LoadS(CCDSubject), _EncodeQuotedUtf8(Subject));
 
    IdMessage1->From->Name = _EncodeQuotedUtf8(_strHDDSerialNumber + LoadS(CCDUserHDD));           //_strHDDSerialNumber -  external string
 
    IdMessage1->Body->Text = DateTime + L"\r\n" + LoadS(CCDTextFromUser) + user_text;        //user_text -  external string
 
    IdMessage1->ContentType = LoadS(CCDContentType);
    IdMessage1->ContentTransferEncoding = LoadS(CCDContentTransferEncoding);    //EncodeQuoted...
    //IdMessage1->ContentTransferEncoding= "base64";                            //EncodeBase64...
    IdMessage1->CharSet = LoadS(CCDCharSet);                                                   //CCDCharSet = "utf-8"
 
    IdMessage1->Priority = mpLow;                                               //Letter priority
    IdMessage1->Flags = IdMessage1->Flags << mfFlagged;
//***************************End message buildeing****************************//
//******************************Create LogEvent*******************************//
    std::auto_ptr<TIdLogEvent> IdLogEvent1(new TIdLogEvent(Application->MainForm->Owner));
    IdLogEvent1->OnReceived = (TLogItemDataEvent)&_IdLogEvent1Received;
    IdSMTP1->Intercept = IdLogEvent1.get();
    IdLogEvent1->Active = true;
//***************************End LogEvent creation****************************//
//********************************Send message********************************//
    try {
        try {
            IdSMTP1->Connect();
            IdSMTP1->Send(IdMessage1.get());
            bSend_res = true;
        } catch(const EIdException &E) {
            ShowMessage(E.Message);
            bSend_res = false;
        } catch(const Exception &E) {
            ShowMessage(E.Message);
            bSend_res = false;
        }
    } __finally {
        IdSMTP1->Disconnect();
        IdSMTP1->Free();
    }
}
//---------------------------------------------------------------------------
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
23.12.2016, 12:48
Цитата Сообщение от Whatson2 Посмотреть сообщение
Аналогичная проблема(!),
Что значит аналогичная? Вам ясным языком сервер отвечает:
Incorrect username/password or rate limit exceeded or account blocked or protocol not enabled
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.12.2016, 12:48
Помогаю со студенческими работами здесь

Ошибка при отправке e-mail (mailMessage), настройка SMTP
Мой первый сайт на ASP.NET на хостинге somee.com. Я делаю так, чтобы посетитель сайта мог отправить мне e-mail. В control panel хостинг...

Ошибка при отправке оповещений - SMTP connect() failed
Здравствуйте! Появилась следующая проблема: письмо с оповещением о новых комментариях - отправлялись (но правда 1 раз, на разные...

Ошибка при отправке почты!!!
Я тут написал прогу отправка почты, запускаю прогу, кликаю на Кнопку отправвить и тут есть ошибка ! Раньше это прога на XP работала,...

Ошибка при отправке почты
Здравствуйте. Подскажите пожалуйста, в чем проблема: Есть код на отправку писем с почты майла, на почту майла (mail.ru). VS не выдает...

Ошибка при отправке почты
Всем привет. Пишу приложение на ASP.NET Core. Использую MailKit для отправки почты. Проблема такова: невозможно подключиться к SMTP...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru