Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: О заполнении поля IdMessage1.From.Text при отправке почты.  (Прочитано 7019 раз)
0 Пользователей и 1 Гость смотрят эту тему.
malor
Опытный

ru
Offline Offline

« : 19-11-2011 18:31 » 

Код: (Delphi)
 
const Host_Server_SMTP = 'smtp.mail.ru';
const Port_Server_SMTP = 25;
const SenderUserName = 'mylogin';
const SenderPassword = 'mypwd';
const SenderAddress = 'mylogin@mail.ru';

const RecipientAddress = 'yourbox@mail.ru';
........................................
........................................

with DataMailModule do
  begin
    IdSMTP1.Host := Host_Server_SMTP;
    IdSMTP1.Port := Port_Server_SMTP;
    IdSMTP1.Username := SenderUserName;
    IdSMTP1.Password := SenderPassword;
    IdMessage1.From.Address := SenderAddress;
    IdMessage1.Subject := ExtractFileName(FileNameAttach);
    IdMessage1.From.Address := SenderAddress;
    IdMessage1.From.Text := 'For You';
    IdMessage1.Body.Text := 'File : ' + ExtractFileName(FileNameAttach);
    IdMessage1.Recipients.Add;
    IdMessage1.Recipients.Items[0].Text := RecipientAddress;
    TIdAttachmentFile.Create(IdMessage1.MessageParts, FileNameAttach);

    try
      IdSMTP1.Connect;
      IdSMTP1.Authenticate;
      IdSMTP1.Send(IdMessage1);
      IdSMTP1.Disconnect;

    except
      on E: Exception do
      begin
        //ShowMessage('Чот не то.');

      end;

    end;

На строке
      IdSMTP1.Send(IdMessage1);

прога прекращает выполняться, начинается except для нее.
Если написать
    IdMessage1.From.Text := SenderAddress;
то отправка проходит. Почему ?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 19-11-2011 19:42 » 


IdMessage1.From.Text := SenderAddress;

подозреваю, но покажи что в SenderAddress
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #2 : 19-11-2011 20:10 » 

Полагаю потому, что From.Text и From.Address взаимосвязаны.

Так и есть. Сколько раз я говорил, что надо читать документацию. Благо с Борландом достаточно всего лишь нажать F1.

Цитата: F1
 AEmail.Text := '"John Doe" <jdoe@some.net>';
  // AEmail.Name contains '"John Doe"'
  // AEmail.Address contains 'jdoe@some.net'

  AEmail.Name := 'Jane Doe';
  AEmail.Address := 'janed@another.net';
  // AEmail.Text contains 'Jane Doe <janed@another.net>'
« Последнее редактирование: 19-11-2011 20:14 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines