![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кто работал с TNMSMTP ??? [D6, WinXP]
Andrushk © (2002-09-10 16:59:00)Откликнитесь кто работал, я вопрос вам задам, а то что-то никто мне подсказать не может, такое чувство что никто этот компонент и не ипользует.
Может есть какой-то более хороший компонент? Подскажите если так.
savva (2002-09-11 14:24:00) [1]если уж твоя программка очень уверена что лезет на тот сервер на какой надо, то делай
while not NMSMTP1.Connected do begin
try
NMSMTP1.Connect;
except
{тут делаешь все что твоей душе будет
угодно, например задержку секнд на 5,
и никакого сообщения помимо твоей воли никуда не "вывалится" }
end;
end;
а дальше по цепочке
procedure TForm1.NMSMTP1Connect(Sender: TObject);
begin
NMSMTP1.SendMail;
end;
тогда если все параметры верны - то в конце концов коннект свершится:)
а в обработчиках ошибок, как еще 1 вариант, подставляй верные значения параметров
Andrushk (2002-09-10 18:23:00) [2]я нашел какой обработчик срабатывает, скажем при неверном UserID, и сделал там Handled := TRUE;
- я даже кстати где-то видел пример обработки этой ошибки
короче не помогает
можно знаешь чего сделать, в обработчике поставить верный UserID и сделать Handled := TRUE; - вот тогда все заработает, а протсо Handled := TRUE; - не поможет
savva (2002-09-10 18:13:00) [3]во всех обработчиках ошибок этого компонента есть
var handled: Boolean;которая и отвечает за дальнейшую обработку ошибок. Что ошибка дальше тебя не проходила сделайHandled := TRUE;
Andrushk (2002-09-10 18:01:00) [4]блин, никто не кричит, я совершенно спокойно спрашивал, просто чего мучаться вопрос формулировать если помогать некому
так вот вопрос:
мне надо, чтобы программа, которая будет отправкой почты заниматься продолжала работу независимо от всяких неурядиц, в том числе и если потеряется связь с сервером, просто она должна подождать и попробовать отправить почту снова
если хотя бы один из параметров:
Host
Port
UserID
окажется неверным, то при вызове connect выдается сообщение об ошибке, прям так вываливается окно с ошибкой и чтобы программа продолжила работу надо нажать ОК, как сделать чтобы это окно не вываливалось???? я хочу сам обрабатывать ошибки, мне надо только знать что была ошибка, и не надо никаких сообщений на экран, тем более возникающих против моей воли
zx (2002-09-10 17:58:00) [5]NMSMTP1.Host := Edit1.Text; //Почтовый сервер
NMSMTP1.UserID := Edit2.Text; //Идентификатор пользователя
NMSMTP1.PostMessage.ToAddress.Text := Edit3.Text; //Куда отправляется сообщение
NMSMTP1.PostMessage.FromAddress := Edit4.Text; //Адрес отправителя
NMSMTP1.PostMessage.Subject := Edit5.Text;; //Тема сообщения
NMSMTP1.PostMessage.Body.AddStrings(Memo1.Lines);
NMSMTP1.PostMessage.LocalProgram:="E-mail";
NMSMTP1.Connect; //Соединение с сервером
NMSMTP1.SendMail; //Отправка сообщения
NMSMTP1.Disconnect;
savva (2002-09-10 17:03:00) [6]ты бы вместо того чтоб кричать - вопрос бы задал..