Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.59/34: Рейтинг темы: голосов - 34, средняя оценка - 4.59
16 / 16 / 10
Регистрация: 11.09.2013
Сообщений: 157
Записей в блоге: 1

Не отправляется e-mail

01.11.2014, 20:18. Показов 8031. Ответов 49
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пытаюсь отправить, что-нибудь на email из Delphi 7, до этого ранее отправлял, но старые примеры не работают, не понимаю в чём дело.

Применяются 2 компонента: IdMessage и IdSMTP
Вот код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Smtp.Username:='LOGIN@mail.ru';
Smtp.Password:='PASSWORD';
Smtp.AuthenticationType:=atLogin; // atNone
Smtp.ASCIIFilter:=true;
MailMessage.From.Text:='LOGIN@mail.ru';
MailMessage.Subject:='TEMA E-MAIL'; // ????
MailMessage.From.Address:='LOGIN@mail.ru'; // ????? ???????????
MailMessage.Recipients.EMailAddresses:='LOGIN@mail.ru';
MailMessage.Body.Text:='TEXT EMAIL'; // ????? ?????????
 
try
  try
   SMTP.Connect;
   SMTP.Send(MailMessage);
   ShowMessage('OK!');
   except on E:Exception do
   begin
     ShowMessage('ERROR - '+E.Message +#10#9 + 'PISMO NT OTPRAVLENO');
   end;
 end;
 finally
 if SMTP.Connected
  then SMTP.Disconnect;
 end;
(Логин и Пароль - заменены словами)
При отправке - появляется ошибка.
Скажите, что тут не так или отправьте точно-работающий код.
Спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.11.2014, 20:18
Ответы с готовыми решениями:

Не отправляется mail
Приветствую. Есть скрипт обратной связи, и он не работает. Выскакивает при проверке на присутствие данных. В чём может быть проблема?...

Информация не отправляется на e-mail
Здравствуйте. Информация переданная из js не отправляется на email. Не могу понять почему. Вот код js: ...

Не отправляется сообщение на e-mail
if ($s == mailsent){ if (isset($_POST)) { $mail = $_POST; if ($mail == '') { unset($mail);} } if (isset($_POST)) { $txet=$_POST; if...

49
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
02.11.2014, 17:24
Студворк — интернет-сервис помощи студентам
droider, привет!
Да, Yandex теперь работает через SSL.
Подобная тема тут уже обсуждалась и при соответствующих настройках все работает, но ТС слушать никого не желает - у него и так все правильно.
Я проверял на ХЕ7, порт не выставлял:
Перестала работать почта
0
844 / 739 / 342
Регистрация: 22.09.2012
Сообщений: 5,034
02.11.2014, 17:59
Цитата Сообщение от AndHacker Посмотреть сообщение
Посмотрел, стоит 9.00.10 версия indy
Меняй версию indy на более новую и у тебя заработает почта в делфи даже семерке!
0
16 / 16 / 10
Регистрация: 11.09.2013
Сообщений: 157
Записей в блоге: 1
02.11.2014, 21:07  [ТС]
Цитата Сообщение от NIKOLAYY Посмотреть сообщение
Меняй версию indy на более новую и у тебя заработает почта в делфи даже семерке!
NIKOLAYY, это не зависит от версии Indy, ранее всё работало.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
03.11.2014, 20:35
Цитата Сообщение от AndHacker Посмотреть сообщение
из Delphi 7,
Цитата Сообщение от AndHacker Посмотреть сообщение
стоит 9.00.10 версия indy
Варианта два:
1. Можно это добро в мусорку выкинуть и поставить Delphi XE 3 или старше версию, там уже Indy10 используется.
2. В Delphi7 установить Synapse и использвать его вместо Indy9.

Ибо лично мне заставить работать Indy9 с SSL не удалось, полагаю это не излечимая болезнь.

Цитата Сообщение от AndHacker Посмотреть сообщение
NIKOLAYY, это не зависит от версии Indy, ранее всё работало.
Раньше почтовые сервисы не использовали SSL.
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
03.11.2014, 20:42
Цитата Сообщение от Avazart Посмотреть сообщение
Можно это добро в мусорку выкинуть и поставить Delphi XE 3 или старше версию
об этом я тоже говорил ранее,
Оставьте Ваши Delphi 7 и переходите на новые версии
но обоих участников беседы это не устроило. Им на 7-ке подавай готовый код.

Даже готовый код для старшей версии, как оказалось, им проблематично адаптировать. Типа не работает.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
03.11.2014, 20:43
Цитата Сообщение от droider Посмотреть сообщение
но обоих участников беседы это не устроило. Им на 7-ке подавай готовый код.
Ну так хай мучаются с Synapse... он как раз видимо для таких любителей написан
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
03.11.2014, 20:59
Цитата Сообщение от Avazart Посмотреть сообщение
Раньше почтовые сервисы не использовали SSL
да, например, к Yandex я раньше обращался по 25-му порту. Проблем не было. Это видно в приведенном мной коде. Теперь и Яндекс перешел на SSL. Пришлось чуть адаптировать и все работает, как раньше.

На удивление ТС
Цитата Сообщение от AndHacker Посмотреть сообщение
до этого ранее отправлял, но старые примеры не работают, не понимаю в чём дело
могу ответить тремя буквами - SSL.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 08:12
Delphi
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
begin
 with idSmtp1 do begin
Host:= 'smtp.yandex.ru';
Port:=587;
Username:='user'; 
Password:='65465456'; 
AuthType :=satDefault;
end;
 with idMessage1 do begin
CharSet :='koi8-r'; 
From.Text:='user@yandex.ru';
Subject:='Test';
From.Address:='user@yandex.ru';
Recipients.EMailAddresses:='user@yandex.ru';
Body.Text:=Memo1.Text; 
IdSMTP1.USeTLS:=utUseExplicitTLS;
idSMTP1.IOHandler:=IdSSLIOHandlerSocketOpenSSL1;
end;
 
 try
  try
   idSmtp1.Connect;
   idSmtp1.Send(idMessage1);
   ShowMessage('Письмо отправлено!');
  except on E:Exception do
   begin
    ShowMessage('Статус отправки: ERROR - '+E.Message +#10#9 + 'Письмо не отправлено');
   end;
  end;
 finally
  if idSmtp1.Connected
  then idSmtp1.Disconnect;
 end;
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
04.11.2014, 09:11
Алексей1990, а эти строки
Delphi
1
2
3
From.Text:='user@yandex.ru';
From.Address:='user@yandex.ru';
Recipients.EMailAddresses:='user@yandex.ru';
кто заменять будет? Здесь Вы должны указать свой почтовый адрес! Интересно, как Вы собирались письмо отправить? В некуда...
P.S. Конечно же, вначале нужно указать свой логин и пароль.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 09:13
Цитата Сообщение от droider Посмотреть сообщение
From.Text:='user@yandex.ru'; From.Address:='user@yandex.ru'; Recipients.EMailAddresses:='user@yandex. ru';
Это я просто заменил за место своего настоящего
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
04.11.2014, 09:17
Алексей1990, SSL библиотеки у меня не запрашивались. Все стандартно, при выставлении параметров.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 09:24
Цитата Сообщение от droider Посмотреть сообщение
это настоящий адрес? Я его выставлял для примера вообще-то
Настоящий адрес eset3200@yandex.ru , а user@yandex.ru также оставил для примера на форуме. IdSSLIOHandlerSocketOpenSSL1 выставил 587 порт и idSmtp1 тоже порт 587
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
04.11.2014, 09:27
Алексей1990, порт можно выставить только у idSMTP. Я его выставил программно, а остальные параметры настроил в инспекторе.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 09:40
вот что у меня настоено
0
Эксперт Pascal/Delphi
 Аватар для droider
4893 / 2826 / 867
Регистрация: 04.10.2012
Сообщений: 10,278
04.11.2014, 09:47
По ошибке 3-го скрина. В свойстве IOHandler компонента idSMTP1 выставляем IdSSLIOHandlerSocketOpenSSL1.
Написал же ранее.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 09:53
Цитата Сообщение от droider Посмотреть сообщение
В свойстве IOHandler компонента idSMTP1 выставляем IdSSLIOHandlerSocketOpenSSL1
когда выставляю то появляется ошибка
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
04.11.2014, 10:38
Длл-ки скопировать в папку.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 10:41
Цитата Сообщение от Avazart Посмотреть сообщение
Длл-ки скопировать в папку.
они там
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
04.11.2014, 10:43
Цитата Сообщение от Алексей1990 Посмотреть сообщение
они там
Я больше ошибке верю, которая говорит что все же не там.
0
5 / 5 / 0
Регистрация: 13.04.2013
Сообщений: 67
04.11.2014, 10:49
если эти pcrelib.dll libeay32.dll ssleay32.dll то они в папке
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.11.2014, 10:49

Не отправляется сообщение на e-mail
Ребята.. нужно научиться отправлять сообщение на e-mail через яндексовский SMTP Вот код по событию нажатия на кнопку: string...

Почему не отправляется e-mail?
Почему не отправляется сообщение? Ошибка: An unhandled exception of type 'System.Net.Mail.SmtpException' occurred in System.dll ...

Не отправляется e-mail из программы Delphi7
Есть программа,в которой при нажатии на кнопку должно отправляться письмо. Но отправка не происходит + если нажать на кнопку нельзя закрыть...

Database Mail - не отправляется почта
Здравствуйте! MS SQL2017 Не могу отправить почту с помощью DatabaseMail. Не отправляются и тестовые сообщения. Запрос EXEC...

Не отправляется e-mail (smtp.gmail.com)
Привет всем доброго времени суток мне нужна помощь хочу отправить мило через делфи использую етот код procedure...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru