Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];

Вниз

Отправка E-mail ов   Найти похожие ветки 

 
Schummi   (2002-03-24 09:38) [0]

Мастера! Не знаете ли как с помощбю компонента TnmSMTP отправить письмо? Я знаю, это просто, но как быть с nmSMTP.Host?
Т.е. когда я ставлю в nmSMTP.Host например smtp.tut.by, а порт - 25, то ни на какие другие e-mail"ы кроме *@tut.by я не многу отправить письмо? В чем дело? Мот я что-то не так делаю? А когда и пытаюсь отправить письмо не на *@tut.by, то вылетает ошибка "503 no valid RCPT address specified"! И когда файлы во вложение запихиваю, то уже получается не html-письмо! Пасиба!


 
dmitryK   (2002-03-24 11:01) [1]

В принципе делаешь все правильно. Возможно эта проблема связана с политикой Белпака по поводу фильтрации пакетов по 25 порту.

Попробуй поставить порт 2525.

А еще зайди на сам tut.by и почитай их рекомендации по поводу настройки почтовых клиентов для отправки писем через их сервер.


 
Schummi   (2002-03-24 11:56) [2]

Я порт и ставлю 2525!


 
Schummi   (2002-03-24 11:56) [3]

Я порт и ставлю 2525!


 
Schummi   (2002-03-24 11:57) [4]

Сори!


 
Schummi   (2002-03-24 11:57) [5]

Я порт и ставлю 2525!


 
Schummi   (2002-03-24 11:58) [6]

Да, но как тогда быть с html-письмом? И как выставить кодировку КОИ8-Р на отправляемые письма?


 
Anatoly Podgoretsky   (2002-03-24 12:01) [7]

Ты хочешь стать спаммером, ты находишься в списке разрешенных доиенов?


 
dmitryK   (2002-03-24 13:38) [8]

2Anatoly Podgoretsky
Вообще-то, tut.by является бесплатным почтовиком, и вроде можно слать через него письма с помощью любого почтового клиента (а не только через веб-интерфейс).

Хотя, как-то раньше я пытался из оутлука посылать письма через тут.бу и у меня ничго не получилось, может я тогда неправильно что-то настроил, а может сам тут.бу не позволяет слать насквозь (тогда становится понятна и выдаваемая ошибка).


> Да, но как тогда быть с html-письмом?


все как обычно, делаешь ХТМЛ страничку и пишеш ее в Body.


> И как выставить кодировку КОИ8-Р на отправляемые письма?


поле CharSet:=koi8-r
+ в ХТМЛ <meta content="text/html; charset=koi8-r" http-equiv=Content-type>

В четвортой дельфе эти вещи работали некоректно, но начиная с 5 все должно быть нормально.


 
dmitryK   (2002-03-24 13:40) [9]

ах, да

SubType:=mtHTML


 
Schummi   (2002-03-24 14:15) [10]

Да, я все так и делаю! Спамером, Anatoly Podgoretsky, я стать не хочу. Надо, чтобы моя прога письма отсылала. ShellExecute я пользоваться не хочу, т.к. не у всех установлены почтовые клиенты. Тогда как быть с nmSMTP.Host?


 
Malder   (2002-03-24 19:53) [11]

очень просто. Найди сервак, который разрешает отправку писем без авторизации отправителя. Таких серверов почти нет =)
тогда зарегистрируйся на каком-либо сервере...


 
Anatoly Podgoretsky   (2002-03-24 20:03) [12]

Schummi © (24.03.02 14:15)
Если ты не находишьмя в списке разрешенных доменов и провайдер придерживается антиспамерской позиции, не содержит открытый релей, то ни как, иначе любой сможет рассылать спам через него.

Malder © (24.03.02 19:53)
SMTP протокол не поддерживает авторизацию как класс.
Регистрация не поможет, смотри выше. Или твой IP находится в списке или это открытый релей.


 
Malder   (2002-03-24 22:08) [13]

Anatoly Podgoretsky, вынужден вас огорчить. SMTP очень даже поддерживает авторизацию...
самое простое доказательство, запустите Outlook Express.
Сервис->Учетные записи->Почта
выберите какой либо аккаунт
->Вкладка Серверы

И посмотрите вниз формы...

P.S. А можно RFC почитать


 
Capo   (2002-03-25 14:01) [14]

Попробуй host wsnet.ru или surguttel.ru; порт 25. Вроде как эти провайдеры рассылают даже если не являешься их клиентом. Только при авторизации укажи любой ID. Вышеобозначенная ошибка "503 no valid RCPT address specified" возникала у меня с хостом mail.ru и land.ru. Но иногда через них удавалось отсылать на любые адреса. С чем связана такая нестабильная работа не знаю. Кто знает напишите.


 
Ghost.   (2002-03-26 08:59) [15]

Malder © как раз RFC вам стоит прочитать..а не вкладки смотреть потому,что есть еще протокол ЕSMTP который поддерживает Outlook Express и не поддерживает TnmSMTP...


 
dmitryK   (2002-03-26 09:55) [16]

Авторизация необходима для того что бы почту забрать с сервера, а не отправить на него. И в SMTP протоколе действительно нет авторизации.

Но сервер может позволять зарегистрированным пользователям (а точнее это его прямая обязаность) отправлять почту на другие сервера. Я предполагал, что Schummi - зарегистрировался на tut.by и не забыл прописать имя и пароль в соответствующих полях своей TnmSMTP компоненты. Если это так, то все должно работать (если, конечно, tut.by позволяет слать почту не только через свой веб-интерфейс)


 
Андрей Сенченко   (2002-03-26 13:55) [17]

>> dmitryK (26.03.02 09:55)
А можно посмотреть на тот самый компонент nmSMTP, который обладает свойством "пароль" ? Я такого не видел. У nmPOP3 есть ( а как иначе ), а у этого - нет. Потому что пароль не нужен протоколу SMTP, потому что он не поддерживает авторизацию.


 
dmitryK   (2002-03-26 14:59) [18]


> который обладает свойством "пароль"

мда, что-то я зарапортовался, действительно, таковых у него нет.

но есть UserID, правда неуверен, что в данном случае это поможет.


 
Андрей Сенченко   (2002-03-26 16:45) [19]

UserID не поможет. Он здесь совершенно ни при чем, насколько я понимаю суть SMTP ( а понимаю не очень хорошо ).
Сам столкнулся недавно с этой проблемой и пока не смог ее обойти иначе, как отсылкой почты через сервер, не требующий авторизации.
Компонентов, работающих с протоколом ESMTP и соответственно с авторизацией пока не встречал.


 
Андрей Сенченко   (2002-03-26 17:09) [20]

Во ! Встретил !!!
"Всего" за 400 баксов. Все охочие - сюды :
http://www.quiksoftcorp.com/


 
Wonder   (2002-03-26 17:29) [21]

>Malder
"Anatoly Podgoretsky, вынужден вас огорчить. SMTP очень даже поддерживает авторизацию..."
А я вот вынужден тебя огорчить. SMTP не поддерживает авторизацию.
самое простое доказательство, запустите Outlook Express.
Это не доказательство. Это просто невежество.
P.S. А можно RFC почитать
Вот, вот. И почитай на досуге. RFC821 SIMPLE MAIL TRANSFER PROTOCOL


>Schummi
"Т.е. когда я ставлю в nmSMTP.Host например smtp.tut.by, а порт - 25, то ни на какие другие e-mail"ы кроме *@tut.by я не многу отправить письмо? В чем дело?"

А аккаунт у тебя в этом домене?
"Дело видите ли в том", что есть такое понятие "relay". Конкретный сервер smtp.tut.by не обязан релеить почту с адресов, отличных от его домена.


 
Malder   (2002-03-26 19:29) [22]

Anatoly Podgoretsky, Wonder, Ghost, извините - ошибся. Но все равно авторизация поддерживается, пусть и не в стандартном SMTP протоколе. И большинство серверов (особенно бесплатных) используют эту функцию. Так что почту нужно отправлять через сервер без авторизации. Скорее всего, это сервер твоего провайдера...


 
SerVS - S   (2002-03-27 10:27) [23]

Wonder © прав многие сервера не поддерживают отправку писем с адресов отличных от его домена.
>Wonder ©
Ты не знешь, как это делает Аутлук? Я пытался послать письмо с UA.FM на MAIL.RU с помощью компоненты - вылетает ошибка, а он с... может!
>Schummi ©
С хтмл - никак! В NMSMTP специально запорота эта возмощность (в бесплатной версии), если хочешь посылать красивый хтмл с картинками и прочими вложениями то используй IdSMTP.


 
Schummi   (2002-03-29 07:45) [24]

Возникает два вопроса:
1) Как с помощью компонента TNMSMTP отправить письмо с любого e-mail"а на любой, а точнее какой использовать nmSMTP.Host?

2) Что значит ошибка "503 no valid RCPT address specified"?


 
Ghost.   (2002-03-29 08:49) [25]

Эта ошибка означает..неверная последовательность команд..не ты первый кто сталкивается с ней в этой компоненте..но действительно будет правильнее если ты не хочешь описывать протокол в ручную, что кстати во моногих случаях дает больше возможностей по работе с почтой, возми компоненты пориличнее..nmSMTP это больше демонстрационный, чем реально рабочий


 
Anatoly Podgoretsky   (2002-03-29 12:50) [26]

Schummi © (29.03.02 07:45)
Это означает "Недопустимый адрес получателя"


 
Ghost.   (2002-03-29 12:58) [27]

Anatoly Podgoretsky © RFC 821
If the transaction beginning command argument is not
acceptable a 501 failure reply must be returned and the
receiver-SMTP must stay in the same state. If the commands
in a transaction are out of order a 503 failure reply must
be returned and the receiver-SMTP must stay in the same state
.


 
Ghost.   (2002-03-29 13:07) [28]

При всем уважении к вам "Недопустимый адрес получателя" это 550


 
Schummi   (2002-03-30 08:01) [29]


> возми компоненты пориличнее..nmSMTP это больше демонстрационный,
> чем реально рабочий

Хорошо, тогда какие предложите компоненты к использованию?


 
Schummi   (2002-03-30 15:56) [30]

Только не молчите! Plz...


 
Anatoly Podgoretsky   (2002-03-30 16:01) [31]

Malder © (24.03.02 22:08)
Хотел уже отругать, но виду, что ниже ты уже извинился


 
Anatoly Podgoretsky   (2002-03-30 16:04) [32]

Ghost. © (29.03.02 08:49)
Надо обладать очень развитым воображением, что бы перевести сообщение "503 no valid RCPT address specified"? как "неверная последовательность команд", что касается номеров ошибок, кто спорит, что друногй сервер вместо 503, использует код 550 - его право.


 
karnizzz   (2002-03-31 19:11) [33]

Удалено модератором


 
karnizzz   (2002-03-31 19:18) [34]

Удалено модератором


 
Ghost.   (2002-04-01 09:27) [35]

Anatoly Podgoretsky ©
а If the commands
in a transaction are out of order a 503
как перевести?


 
Ghost.   (2002-04-01 09:35) [36]

Вот так расшифровывает их http://www.sources.ru/protocols/smtp_learning.shtml

211 Ответ о состоянии системы или помощь
214 Сообщение-подсказка (помощь)
220 <имя_домена> служба готова к работе
221 <имя_домена> служба закрывает канал связи
250 Запрошенное действие почтовой транзакции успешно завершилось
251 Данный адресат не является местным; сообщение будет передано по маршруту <forward-path>
354 Начинай передачу сообщения. Сообщение заканчивается комбинацией CRLF-точка-CRLF
421 <имя_домена> служба недоступна; соединение закрывается
450 Запрошенная команда почтовой транзакции не выполнена, так как почтовый ящик недоступен
451 Запрошенная команда не выполнена; произошла локальная ошибка при обработке сообщения
452 Запрошенная команда не выполнена; системе не хватило ресурсов
500 Синтаксическая ошибка в тексте команды; команда не опознана
501 Синтаксическая ошибка в аргументах или параметрах команды
502 Данная команда не реализована
503 Неверная последовательность команд
504 У данной команды не может быть аргументов
550 Запрошенная команда не выполнена, так как почтовый ящик недоступен
551 Данный адресат не является местным; попробуйте передать сообщение по маршруту <forward-path>
552 Запрошенная команда почтовой транзакции прервана; дисковое пространство, доступное системе, переполнилось
553 Запрошенная команда не выполнена; указано недопустимое имя почтового ящика
554 Транзакция не выполнена


 
Schummi   (2002-04-02 07:51) [37]

Да, все так! Но, какие компоненты мне тогда использовать для отпровки E-Mail"ов с любого на любой?


 
Ghost.   (2002-04-02 08:59) [38]

Это все зависит от сервера, через который отправляешь, моногие бесплатные серверы делают так, что ты можешь отправлять куда угодно только с их адресами, но правильность их никто не проверяет, если например ты с mail.ru будешь отправлять как от vasya@mail.ru даже если ящик не твой то оно пройдет, а если будет адрес не mail.ru то будет как ты написал...
так, что отправляй через сервер провайдера или пиши СМТП сервер сам..


 
Anatoly Podgoretsky   (2002-04-02 17:26) [39]

Ghost. © (01.04.02 09:35)
Все так, но это касается конкретного сервера.
В данном случае "503 no valid RCPT address specified"! имеет код 553

Нету жесткой привязки между номерами и текстами, есть только разбивка по сотням как класс. Точная расшифровка следует сразу за номером сообщения.


 
Anatoly Podgoretsky   (2002-04-02 17:35) [40]

На моем сервере

501 sender domain must exists
550 relaing denied
551 user has moved
553 real domain name required
553 domain name required

Обрати внимание на резкое отличие для кода 501 и наличие двух разных сообщений для кода 553
А решение действительно, свой собственный SMTP сервер, так как незащищенных от спама серверов остается все меньше.


 
Wonder   (2002-04-02 17:48) [41]

>Anatoly Podgoretsky
IMHO:

Зачем, скажите мне, существуют стандарты?
Видимо за тем, чтобы им следовать. Если конкретный сервер не следует стандарту smtp, то он не может считаться true smtp-сервером.

"Replies to SMTP commands are devised to ensure the synchronization of requests and actions in the process of mail transfer, and to guarantee that the sender-SMTP always knows the state of the receiver-SMTP.
...
In particular, the text may be receiver-dependent and context dependent, so there are likely to be varying texts for each reply code."

Какой текст идет за кодом - это-то как раз не важно. Важен код ошибки. Одно из самых главных требований в реализации такого рода стандартов - это именно правильная и однозначная реакция на ошибки.

К тому же существует привязка reply codes к определенным командам.


 
Ghost.   (2002-04-03 08:59) [42]

Да в этом случае навероне свой написать и проще будет, т.к. в остальных много ограничений, на размер писем на наличие ящика на их сервере, некоторые требуют сначала забрать почту со своего ящика у них, а только потом можно чете отправить


 
Anatoly Podgoretsky   (2002-04-03 13:12) [43]

Wonder © (02.04.02 17:48)
Где ты нашел стандарты?
Если бы был стандарт то было бы просто.
Текст который ты привел, видимо из RFC только подтверждает это.


 
Anatoly Podgoretsky   (2002-04-03 13:15) [44]

Что бы закончить эту бесплодную дисскуссию, прадлагаю следующее:

Ты считаешь, что коды всегда и везде одинаковые для любых серверов, я считаю наоборот. И мы с друг другом несогласны и не готовы к согласию, у каждого саоя непоколебимая точка зрения и смысла стараться пошатнуть ее нет.


 
Wonder   (2002-04-03 13:53) [45]

>Anatoly Podgoretsky
"Где ты нашел стандарты?"
А RFC это по вашему что? (английский язык я знаю :)

"Ты считаешь, что коды всегда и везде одинаковые для любых серверов"
Я этого не утверждал.
Я против того, что "другой сервер вместо 503, использует код 550 - его право". Нет, это не его право. В описании сервера заявляется, какого(их) стандарта(ов) он придерживается (номера RFC).

"Текст который ты привел, видимо из RFC только подтверждает это."
Что подтверждает?

"Точная расшифровка следует сразу за номером сообщения."
В том-то и дело, что я привел выдержку, обратную вашему утверждению. Текст за кодом ответа не важен и может менятся сервером. Это допускается в smtp. Не допускается менять конкретные коды ответов на конкретные команды.

Пы.Сы. Согласен, что друг друга не переубедить. :)


 
Schummi   (2002-04-04 08:00) [46]

Так что там с компонентами? Отпралять E-Mail надо с любого на любой.


 
Ghost.   (2002-04-04 08:42) [47]

С любого на любой...это ты обратный хочешь постоянно менять?


 
Ghost.   (2002-04-04 09:01) [48]

Тогда можешь поробовать http://www.torry.net/email.htm
там есть TSmtpRelay Server правда он не бесплатный и внизу письма свою рекламку прицепляет, но работает хорошо, он тебе точно с любого на любой отправит..если хочешь можешь написать такую штуку сам..могу помоч..но тока непонятно, для каких добрых дел существует необходимость с любого на любой...


 
Anatoly Podgoretsky   (2002-04-04 10:44) [49]

Wonder © (03.04.02 13:53)
1. Коже заменитель
2. Если разные, то в чем проблема, я говорю что нет стандарт или в крайнем случае RFC на номера, есть рекомендация на серию
3. Вот это
"In particular, the text may be receiver-dependent and context dependent, so there are likely to be varying texts for each reply code."
4. Продолжаешь настаивать, так приведи авторитетный документ, скажем по кодам 503, 550
5. Я и говорю, пора заканчивать дисскусси, а то будем по кругу вертеться.


 
Anatoly Podgoretsky   (2002-04-04 10:46) [50]

Schummi © (04.04.02 08:00)
Или ищи открытый релей или свой smtp сервер, без антиспамерских и коммерческих ограничений.


 
Anatoly Podgoretsky   (2002-04-04 11:07) [51]

Wonder © (03.04.02 13:53)
Кстати я наверно понял в чем недопонимание, ты говоришь по всей видимости о классах, а я об ошибка привязанным к этим классам, второе отдано на откуп серверам. И все обсуждение велось с моей стороын только по ошибкам, в контексте вопроса и приведенных ошибок.
Если так то все объяснимо.


 
Wonder   (2002-04-04 12:46) [52]

>Anatoly Podgoretsky
RFC - это набор документов, содержащих стандарты Интернет-протоколов. Именно стандарты, а не какие-то призрачные рекомендации.

"приведи авторитетный документ, скажем по кодам 503, 550"

RFC 821 SIMPLE MAIL TRANSFER PROTOCOL
Авторитетней некуда.

Раздел COMMAND-REPLY SEQUENCES

"Each command is listed with its possible replies."
Обратите внимание на "Each command" и "possible replies".

Раздел APPENDIX E
Theory of Reply Codes

"Each reply text is recommended rather than mandatory, and may even change according to the command with which it is associated. On the other hand, the reply codes must strictly follow the specifications in this section."



 
Anatoly Podgoretsky   (2002-04-04 12:56) [53]

Wonder © (04.04.02 12:46)
Не ужели ты думаешь, что я не смотрел RFC-821
Но все таки это рекомендации, а стандартов только 52, рекомендации конечно более чем авторитетные, но не обязательные, что соответственно хорошо демонстирируется различными серверами, в первую очередь как как почтовыми, так и фтп


 
Wonder   (2002-04-04 13:17) [54]

>Anatoly Podgoretsky
"стандартов только 52" - кто вам сказал?
SMTP - это стандарт. STD 10, RFC 821

Ни разу не встречал FTP сервера, "врущего" коды. Был один на OS/2 (выдавал неправильный код на одну из команд) - так его сразу же пропатчили.


 
Anatoly Podgoretsky   (2002-04-05 19:46) [55]

Wonder © (04.04.02 13:17)
Насчет 52 не буду настаивать у меня устаревшии сведения.
Насчет стандартов я просто не стал бы делать равенство между
STDxxxx и RFCxxxx, они имеют разный статус, первые стандарт, а вторые рекомендаций, очень часто, точнее как правило RFC становятся основой для стандарта, но и как ты наверняка знаешь что кроме STD/RFC есть еще и ID и FYI.

Просто вопрос совсем о другом, почему Schummi получает "отлуп", по моему он уже давно разъяснен, только мы с тобой продолжаем дисскуссию, хотя я предлагал ее закончить.

У меня к тебе другая просьба, не подскажешь ли адрес где можно получить все стандарты, авторитетные источники или позволяют сделать поиск по номеру или вообще не имеют STD, с RFC такой проблемы нет, это может быть или анонимный FTP или WEB с простым списком, был бы очень признателен.

ЗЫ: то что SMTP имеет статус стандарта я в курсе STD0010 с 1995 года.


 
Schummi   (2002-04-07 21:18) [56]

2Ghost (да и для всех)

> если хочешь можешь написать такую штуку сам..могу помоч..но
> тока непонятно, для каких добрых дел существует необходимость
> с любого на любой...

Понимаете, в моей проге есть функция - отправка E-Mail"ов. Как (используя какой компонент) мне их лучше отправлять? Решил сразу использовать TnmSMTP, но там требуется адрес отправителя, SMTP-сервер и SMTP-порт! С последними двумя вещами у мя и загвоздка! Вообще, мне надо именно на любой E-Mail отправить письмо!
Кто может, помогите, плз! Пасиба!


 
Anatoly Podgoretsky   (2002-04-07 21:22) [57]

Прницип просто, но боюсь тебе будет тяжело его реализовать,
надо найти с помощью в DNS - MX запись для домена и уже туда отправлять, в этом случае отправка практически гарантируется.


 
Schummi   (2002-04-07 21:32) [58]

2Anatoly Podgoretsky
Скачал себе компонент TSmtpRelayServer. Там есть поле такое - DSN. Что енто за поле? И что туда вводить?


 
Schummi   (2002-04-07 21:35) [59]

Да, и Signon что такое? Спасибо!


 
Anatoly Podgoretsky   (2002-04-07 21:42) [60]

У меня нет это компонента, соотвественно никакой документации


 
Doom   (2002-04-07 21:47) [61]

У меня задача попроще - как отправлятьть письмо на один и тот же почтовый ящик. Например чтобы мне отправить письмо другу на xxx@yandex.ru мне надо каждый раз заходить на сервер яндекса (я тоже там), вводить логин- пароль, далее щелкать по письму от друга ко мне, потом нажать "ответить" --- и только потом отсылать ему письмо. Как это сделать по-другому? Мне кроме текста в принципе ничего и не надо больше. Чтобы на рабочем столе кликнул- и письмо полетело?
Подскажите пожалуйста если не объяснением то где искать . Заранее спасибо.


 
Anatoly Podgoretsky   (2002-04-07 22:01) [62]

Сделай ярлык mailto:


 
Doom   (2002-04-07 22:56) [63]

не смейтесь надо мной. Я имею в виду как программно с делфи.


 
Wonder   (2002-04-08 10:47) [64]

>Anatoly Podgoretsky
"Насчет стандартов я просто не стал бы делать равенство между
STDxxxx и RFCxxxx"

Весь мир делает, а Anatoly Podgoretsky - нет. Ваше право, конечно...
Соответствующие конкретному стандарту RFC составляют (дословно - формируют) этот стандарт.

"У меня к тебе другая просьба, не подскажешь ли адрес где можно получить все стандарты"
www.yahoo.com - строка поиска "STD RFC index"

"ЗЫ: то что SMTP имеет статус стандарта я в курсе STD0010 с 1995 года."
Если вы знаете, что SMTP - это стандарт, то зачем было спорить?



 
Anatoly Podgoretsky   (2002-04-08 11:33) [65]

Я спорю про RFC, а не про STD, более того я утверждаю, что только STD имеют статус стандарта.

Насчет ссылки не поможешь?
Anatoly Podgoretsky © (05.04.02 19:46)


 
Ghost.   (2002-04-08 11:34) [66]

Doom © Да вобщем смех-то не злой..тебе намного проще возми например для отправки smtp.yandex.ru любой компонент для почты и отправляй скока влезет..а вот если обратный адрес поменять на xxx@xxx.com например, от отправка через яндекс и многие сервера бесплатные не пройдет вот об этом и спор как я понимаю, чтобы с любого на любой..но для себя то кстати после начала этой дискусии я ее решил..написал свой почтовый сервер..пока все работает нормально..правда маил ру письмо с обратным адресом несуществуюего доаена не пропустил..проверяют ..а когда ставишь любой но существующий все ОК


 
dmitryK   (2002-04-08 12:44) [67]

2Ghost.

> написал свой почтовый сервер..пока все работает нормально..

А опытом не поделишься??
Хотя бы общую схему, какими компонентами пользовался (а если не жалко, может и исходники намылишь)?


 
Ghost.   (2002-04-08 13:20) [68]

Не исходники давать небуду...может ты лучше чем я решишь эту задачу, намыль я тебе обьясню как я сделал, а ты мне может поможешь до ума довести..


 
Doom   (2002-04-08 23:36) [69]

Да я пробовал при помощи TNMSMPT (по примеру из делфи) но выдает ошибку Connection Failed Может я чего не то ввожу в свойстве UserID ? Или у меня все неправильно?

Пишу я так:

procedure TForm1.NMSMTP1Connect(Sender: TObject);
begin
NMSMTP1.SendMail;

end;

procedure TForm1.NMSMTP1Success(Sender: TObject);
begin
NMSMTP1.Disconnect;

end;

procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
begin
NMSMTP1.Host := "www.yandex.ru";
NMSMTP1.UserID := "Мой_Логин"; // -----?
NMSMTP1.PostMessage.FromAddress := "мое_имя@yandex.ru";
NMSMTP1.PostMessage.ToAddress.Text := "имя_друга@yandex.ru";
NMSMTP1.PostMessage.Subject := "Testing BytesSent";

for I := 1 to 10 do
NMSMTP1.PostMessage.Body.Add("Test line "+IntToStr(I));
NMSMTP1.Connect; // - на этой строке вылетает ошибка
end;


 
Ghost.   (2002-04-09 08:49) [70]

Естественно..потому что "www.yandex.ru"не почтовый сервер, если мне не изменяет память почтовый там назывантся smtp.yandex.ru но это легко в инфе посмотреть ихней


 
dmitryK   (2002-04-10 11:39) [71]


> Ghost. © (08.04.02 13:20)
> Не исходники давать небуду...может ты лучше чем я решишь
> эту задачу, намыль я тебе обьясню как я сделал, а ты мне
> может поможешь до ума довести..


Это вряд ли. Мне особенно некогда экспериментировать. Как правило, получается так, что надо писать программы вслепую. Т.е. пишу, например, дома, потом приношу и ставлю на сервер, и должно с первого раза заработать. Поэтому выбираю самые простые варианты (прям по учебнику :)).

Есть сейчас задача, рассылать письма минуя собственный SMTP сервер. Хочу примерно оценить сложность реализации. Вот и спрашиваю общую схему.

На данный момент, я бы решал эту задачу в лоб. Взял бы NMSMTP, в качестве домена указал бы имя домена в майле (то что после собачки). И отправлял бы ....
но похоже такой номер пройдет далеко не совсеми серверами. Вот пример с Яндексом. Плюс 25 порт у меня занят собственным сервером, значит в обратном адресе надо указывать другой порт...

Ну что схемой поделишься? ;)


 
Schummi   (2002-04-13 07:05) [72]

Народ, так что с компонентом TSMTPRelayServer? И с его свойствами DNS и SignOn?


 
Schummi   (2002-04-13 22:14) [73]

г - о - в - о - р - и - т - е


 
SerVS   (2002-04-14 11:32) [74]

mail.ru недает посылать письма на другие адреса до авторизации. Так в чем проблема? Создай там логин например SrvXXYYZZ и посылай через него всю почту.
ЗЫ. А можешь таких аккаунтов создать десяток, или сотню :)


 
Ghost.   (2002-04-14 12:19) [75]

>dmitryK
Интересный у тебя подход к программированию...
ну тогда самый простой вариано это TSMTPRelayServer


 
Schummi   (2002-04-20 08:25) [76]

2Ghost. У мя TSMTPRelayServer не работает. Почему? Не знаю! Что не работает? Смотри выше.


 
Ghost.   (2002-04-20 09:14) [77]

>Anatoly Podgoretsky © (07.04.02 21:22)
>Прницип просто, но боюсь тебе будет тяжело его реализовать,
>надо найти с помощью в DNS - MX запись для домена и уже туда >отправлять, в этом случае отправка практически гарантируется
а ты сам -то знаешь как это реализуется? Я в этом форуме дра иил три раза спрашивал КАК? никто не сказал все посылают в RFC но как возвращается запрос я так и не нашел...только готовый компонент мне помог, а принцип так и остался неясен


 
Ghost.   (2002-04-20 09:36) [78]

>Schummi © Если для тебя Там есть поле такое - DSN. и DNS одно и тоже (то чего ты не знаешь)..то тебе рановато еще заниматься сетевым программированием..без обид..просто стоит книжки почитать..это основа..


 
Anatoly Podgoretsky   (2002-04-20 12:15) [79]

Делается не просто, надо уметь вытаскивать записи из DNS, помочь могут примеры из ICS, может и в Indy такие примеры есть.
Ключевое слово [d]nslookup.

А принцип простой, надо сделать запрос на MX записи для домена, в записях будет информация о сервере, который обрабатывает почту для домена. Записей может быть несколько.


 
Ghost.   (2002-04-20 13:12) [80]

Нет как разобрать запись это другой вопрос...я спрашивал сам транспорт...я нашел информацию, что отправка идет по UDP протоколу вот структура запроса и ответ как поймать


 
ec   (2002-04-25 13:18) [81]

А в поле DNS чей DNS писать ? Кому отправляется ? или что-то другое


 
Ghost.   (2002-04-25 14:26) [82]

А DNS он ничей.. ec © прочти сначала, что это такое..


 
v_s   (2002-04-25 17:07) [83]

А пальчики-то все как топырят!
А TNMSMTP все равно компонент дрянной и зацикливается, если, конечно, не отправлять им "test... I"m samyi krutoj", а, скажем приаттачить 300-500kB, а потом расшифровать семибитный бред, который он передает...


 
ec   (2002-04-26 11:33) [84]

> Ghost

В смысле ничей. Я его пустым остовляю он мне говорит что там написать что-то надо


 
Ghost.   (2002-04-26 13:13) [85]

В смысле того, что (ну пустым его оставлять конечно нельзя) ну если документацию читать ты не хочешь..то тогда просто пиши свой и будет работать, а можешь и любой другой (лиш-бы живой был) и не мороч себе голову этими понятиями все будет ОК, они между собой сами разберуться (в большинстве случав).. :0)


 
ice   (2002-04-28 11:57) [86]

а ты не пытался другой смтп сервак юзать ?;) мож поможет ;)


 
ec   (2002-04-30 19:27) [87]

to ice >
А может ты даже подскажешь какой ?


 
Schummi   (2002-05-05 22:02) [88]

Ну, подскажите пожалуйста, самый простой способ отправитьписьмо на любой e-mail. Наверняка, кто-нибудь сам такое уже пытался делать!!! Можете дать dcu-шку, если исходники показывать не хочется.


 
Ghost.   (2002-05-06 09:30) [89]

Не морочься ставь TSMTPRelayServer DNS 193.121.171.135 И все будет работать


 
ec   (2002-05-06 15:51) [90]

to Schummi

Мне нада было отправить много емаилов, я написал на PHP скрипт для отправки MIME маила, загрузил на virtualave.net и через делфи просто посылал скрипту адреса.


 
Schummi   (2002-05-07 22:01) [91]

2Ghost Поробую...


 
Schummi   (2002-05-09 08:13) [92]

2Ghost Пробовал, ничего не получается... Вроде TSMTPRelayServer отправляет, а письма не приходят! Да, тут, некто Колесников Павел намедни дал мне ссылочку на статейку... Может кто её на Дельфи переведёт??? http://www.infocity.kiev.ua/prog/basic/content/basic082.phtml?id=2278


 
Schummi   (2002-05-12 14:58) [93]

???


 
Schummi   (2002-05-12 16:14) [94]

Такая штука... Посмотрел http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988621410&n=20 , но там нету, куда тело письма писать???


 
Song   (2002-05-12 17:47) [95]

Троянец?


 
ec   (2002-05-13 19:30) [96]

Schummi © eto dlja Outlooka


 
Schummi   (2002-05-14 10:01) [97]

2Song Да не троянец! Объясняю: В проге функция есть: отправить письмо другу. И нужно отправлять на любой e-mail. Я такими делами
> Троянец?
Не ЗАНИМАЮСЬ!!!!!!!
А, что

> eto dlja Outlooka

Так это я и сам уже понял.


 
Ghost.   (2002-05-14 14:33) [98]

На сайте http://users.swing.be/francois.piette/indexuk.htm
скачай компоненты, в их числе будет DnsQuery Там есть пример который возвращает информацию, в том числе и МХ записи..котрыми и являются СМТР сарвера, для определенного адреса..если ты получишь эту запись и напишешь ее в поле Хост твоего компонента, то письмо пойдет прямо на сайт получателя...Вот вобщем и все


 
ec   (2002-05-15 14:44) [99]

a esli prosto IP ukazat" ?


 
Ghost.   (2002-05-15 15:19) [100]

Можно, а как ты его узнаешь?


 
balt   (2002-05-16 11:52) [101]

а ты попробуй другую компаненту вот к примеру такие траблы и у меня были со стандартными компанентами, а когда попробовал Indy всё зароботоло вот тебе адресок где её мона найти, тамже и демки, http://www.nevrona.com/indy


 
ec   (2002-05-17 18:00) [102]

На некоторых серверах для авторизации надо перед SMTP,зайти POP"ой , потом можно отправлять с любого адреса, релей снимается


 
Ghost.   (2002-05-18 11:54) [103]

на Zenon.net помоему так и есть


 
Schummi   (2002-05-19 17:56) [104]

Спасибо всем! Буду пробовать!


 
GatesBill   (2002-05-22 01:07) [105]



> Компонентов, работающих с протоколом ESMTP и соответственно
> с авторизацией пока не встречал.
>
>
> Андрей Сенченко © (26.03.02 17:09)
> Во ! Встретил !!!
> "Всего" за 400 баксов. Все охочие - сюды :
> http://www.quiksoftcorp.com/




Как же так? а вот - TidSMTP из D6 - там имеется поле для ввода пароля на авторизацию.
Сейчас очень многие почтовики требуют пароль при отправке писем. К примеру с помощью того-же TidSMTP (в примере "майл-демо") мне удалось отправить письма с трёх бесплатных (mail.ru land.ru pisem.net) серверов, из четырёх испытуемых НА ЛЮБЫЕ АДРЕСА !!! а не только на их собственные -
Проблемма вышла то-ко с e-mail.ru - пока не успел разобраться но похоже что они разрешают отправлять то-ко через Web.





 
GatesBill   (2002-05-22 13:51) [106]

Вот инструкция по настройке POPклиента для почтового сервера Land.ru :

В любом случае необходимо в настройках своей почтовой программы указать четыре параметра:

1/то, что сервер исходящей почты ( или сервер SMTP ) требует авторизации
2/ название сервера исходящей почты
3/имя пользователя -

/пароль


 
GatesBill   (2002-05-22 13:57) [107]

excuse me ".. по настройке SMTP клиента.."


 
Schummi   (2002-05-26 09:08) [108]

Тогда где взять TidSMTP для Delphi 5?


 
Ghost.   (2002-05-26 14:29) [109]

Ас маил ру можно отправлять на любые если адрес обратный указан их сервера


 
SerVS   (2002-05-26 17:18) [110]

2Schummi ©
>Тогда где взять TidSMTP для Delphi 5?
Все тамже http://www.nevrona.com/indy, там есть версия 9, так она с инсталяхами для д4, д5, д6. Называются ххх40.ехе, ххх50.ехе, ххх60.ехе соответственно.
>Может кто на Дельфи переведет?
Если пытаешься для сетей писать, ты бы с С++ все таки разобрался. Как ты МСДН читаешь? или тебе он не нужен? ;)


 
AANCo   (2002-07-27 06:39) [111]

-----------------------------------------------------------
Готовый исходник см. у товарищей китайцев http://www.pconline.com.cn/pcedu/empolder/gj/delphi/10205/58405.html. Кто не знает китайский, то поясняю:

// надо вставить в событие OnConnect следующий код
nmsmtp1.Transaction("auth login");
nmsmtp1.Transaction(UserName);
nmsmtp1.Transaction(Password);

где UserName и Password нужно просто кодировать функцией Base64Encode (имеется в исходнике).
Она также имеется у Indy (кстати, в IdSMTP.pas можно увидеть этот "auth LOGIN").

-----------------------------------------------------------
Обязательно посети мой сайт http://rc4wa.narod.ru - ДУ для Winamp и видео-радио плугины.


 
jeronimo   (2002-07-27 18:12) [112]

По поводу SMTP с паролем есть стандарт: RFC2554;


 
AlekseyK   (2002-08-15 11:25) [113]

Чтото не получается или может не правельно делаю
procedure TForm1.Button1Click(Sender: TObject);
begin
if smtp1.Connected then smtp1.Disconnect;
message1.Body.Add("Test");
message1.Subject:="test";
message1.From.Text:=edit4.Text;
smtp1.Host:=edit1.Text;
smtp1.UserId:=edit2.Text;
smtp1.Password:=edit3.Text;
smtp1.Connect;
smtp1.Send(message1);
smtp1.Disconnect;

end;


Выдает 503 No recipients: need RCPT


 
AlekseyK   (2002-08-15 11:40) [114]

Sorry забыл про
message1.Recipients.Add.Text:=edit5.text;
теперь все работает


 
Алина   (2002-08-30 22:12) [115]

Помогите мне, я не могу отправить письмо другу...


 
.   (2002-09-27 12:47) [116]

.



Страницы: 1 2 3 вся ветка

Форум: "Сети";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.75 MB
Время: 0.01 c
3-82674
Colonel Isaev
2002-11-06 17:53
2002.11.25
QReport


14-82962
AlexKniga
2002-11-06 17:36
2002.11.25
Я сдал кадмин!!!


1-82827
_Novichok
2002-11-14 09:29
2002.11.25
TreeView


3-82668
xxxxxx
2002-11-06 17:53
2002.11.25
Чем экспортировать таблицу .gdb в текстовый файл.


1-82735
France
2002-11-14 20:33
2002.11.25
Меню без подменю





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский