Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

комноненты Indi, что я делаю неправильно? [D5, D7, Win2k, WinXP]


Dust ©   (2006-03-16 17:15:00) 

Пытаюсь загнать говотое письмо в TIdMessage, получаю Exception, что я делаю неправильно?

procedure TForm1.Button1Click(Sender: TObject);
var idMsg         : TIdMessage;
   MsgFileName   :String;
   NewMsg        :TEmailMessage;
   tick_count    :Integer;
   MsgBody       :TStringList;
   tmp_str       :String;
begin
IdSMTP1.Password := Edit3.Text;
IdSMTP1.Username := Edit2.Text;
IdSMTP1.Host     := Edit1.Text;
IdSMTP1.UseEhlo  := True;
// IdSMTP1.Connect(1500);
if  true (*IdSMTP1.Authenticate()*) then
  begin
   StatusBar1.Panels[0].Text := 'Authenticated';
 NewMsg := TEmailMessage.Create();  
 NewMsg.Date      := Now();
 NewMsg.From      := Edit6.Text;
 NewMsg.ReplyTo   := Edit6.Text;

 NewMsg.AttachFile('c:\andrexa\Projects\Outbox.eml\fr_rus.rar');
 NewMsg.MailTo    := Edit5.Text;
 NewMsg.Subject   := Edit4.Text;

 NewMsg.IncludeTextPart(TStringList(Memo1.Lines));
 NewMsg.EncodeMessage();
 tick_count := GetTickCount();
 MsgFileName :='Outbox.eml\'+IntToStr(tick_count)+'.eml';
 NewMsg.SaveToFile(MsgFileName);

 SetLength( tmp_str, NewMsg.MsgSize);
 Move (NewMsg.MsgPtr^, Pointer(tmp_str)^, NewMsg.MsgSize);

 FreeAndNil(NewMsg);

   MsgBody := TStringList.Create();
   MsgBody.SetText(PChar(tmp_str));
   idMsg := TIdMessage.Create(nil);
   //idMsg.SetBody(MsgBody);
   try
    idMsg.LoadFromFile(MsgFileName); // !!!!!!!!!!!!!!!!!!!!!!!!!!! Exception!!!!!!!!!!!!
    except
    ShowMessage (Exception.ClassName);
    end;
   //IdSMTP1.Send(idMsg);
   FreeAndNil(idMsg);
   FreeAndNil (MsgBody);
  end;
end;


Brother   (2006-03-24 11:11:00) [1]

Огромное спасибо


Суслик   (2006-03-23 22:08:00) [2]


> Brother ©   (20.03.06 06:30) [6]

http://www.indyproject.org/Sockets/Download/Files/Indy10.en.iwp


Brother   (2006-03-20 06:30:00) [3]

Подскажите ссылочку для закачки Indy 10


Dust   (2006-03-17 17:01:00) [4]

в 10-й версии компонент Indy всё работает.


Dust   (2006-03-16 17:36:00) [5]

посмотрел как это делал народ в форуме,
заменил
idMsg := TIdMessage.Create(nil);
на
idMsg := TIdMessage.Create(IdSMTP1);
Этого оказалось недостаточно.... :(
что ещё?


Reindeer Moss Eater   (2006-03-16 17:34:00) [6]

Ну и славно.


Dust   (2006-03-16 17:29:00) [7]

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


Reindeer Moss Eater   (2006-03-16 17:22:00) [8]

что я делаю неправильно?

Замени это
except
ShowMessage (Exception.ClassName);
end;

на это
except
on E:Exception do ShowMessage (E.Message);
end;

и узнаешь что


Наверх

Титульная страница Поиск, карта сайта Написать письмо