|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Использование МХ-записи с ИНДИ
Добрый день.
Есть код определяющий имена СМТП-серверов в МХ-записи (типа mx.kubsu.ru) Есть код, на основе ИНДИ, отсылки письма в том числе по 465 порту через СМТП-сервер типа гугл, яндекс, мылору. все работает НО, если вставить вместо имени смтп-сервера имя смтп-сервера из МХ-записи (типа mx.kubsu.ru) (как это советуют корефаны типа Remy Lebeau Jul 9 '14 at 19:50) Код:
for I := 0 to IdDNSResolver1.QueryResult.Count-1 do begin if IdDNSResolver1.QueryResult[i] is TMXRecord then begin IdSMTP1.Host := TMXRecord(IdDNSResolver1.QueryResult[i]).ExchangeServer; //вот тут mx.kubsu.ru try IdSMTP1.Connect; try IdSMTP1.Verify(user); Result := True; Exit; finally IdSMTP1.Disconnect; end; except // тут ловим исключение Socket Error # 10060 Connection timed out end; end; end; то возвращается ошибка Socket Error # 10060 Connection timed out. вознающая после попытки SMTP.Connect; Вопрос : что все это значит? 1. закончились времена когда можно было дергать сервера и проверять есть ли там указанный аккаунт? 2. надо проверять по 25 порту (хотя пример выше проверялся и по 25 и по 465, результат один и тот же) 3. возможно надо что то еще(типа старый старый TClientSocket или ICS), позабористее, но что канкретно? |
#2
|
|||
|
|||
Там, вроде, все-равно надо обращаться не к mx имени. Посмотри вот тут - есть несколько идей: https://stackoverflow.com/questions/...-email-address
|