•  

ГлавнаяIndyЧастые вопросы по Indy → Через какой компонент в indy можно отправить почту с вложением ?

Создано: 17.05.2014 3:48:38 · Исправлено: 17.05.2014 3:48:38 · Прочтений: 602

через какой компонент в indy можно отправить почту с вложением ?
в компоненте IdMessage не нашел методов для прикрепления файла :(
procedure TFrmJurnPackExport.SendSmtp(file_name:string;Sender :TObject);
var
  SmtpName,User,Pass:string;
  reg:TRegistry;
  all_ok:boolean;
begin
  all_ok := True;

  reg := TRegistry.Create;
  if reg.OpenKey(\Software\+Prog_Name+\Mail,False) then begin
    if reg.ValueExists(login)
      then User := reg.ReadString(login)
      else all_ok := False;
    if reg.ValueExists(pass)
      then Pass := reg.ReadString(pass)
      else all_ok := False;
    if reg.ValueExists(smtp_adres)
      then SmtpName := reg.ReadString(smtp_adres)
      else all_ok := False;
    reg.CloseKey;
  end else All_ok := False;
  reg.Free;

  if not all_ok then begin
    ShowMessage(Почта не настроена!);
    exit;
  end;


  try
    IdSMTP1.Host := SmtpName;
    IdSMTP1.Username := User;
    IdSMTP1.Password := Pass;
    IdSMTP1.ConnectTimeout := 20000;
    IdSMTP1.ReadTimeout := 20000;
    IdSMTP1.Connect;
    IdMessage1.Subject:=Send data from dep N +IntToStr(depno);
    IdMessage1.ContentType:=multipart/mixed; // Письмо с аттачем
    IdMessage1.Recipients.EMailAddresses:=EMailRec.Text; // EMail - Кому
    IdMessage1.From.Name:=IT_Obmen Dep N +IntToStr(depno);
    IdMessage1.From.Address:= User; // EMail-От кого;
    TIdAttachmentFile.Create(IdMessage1.MessageParts,File_name);
    if IdSMTP1.Connected then IdSMTP1.Send(IdMessage1);
    if IdSMTP1.Connected then IdSMTP1.Disconnect;
  except
    ShowMessage(Ошибка отправки данных,+chr(10)+
      ВНИМАНИЕ! ДАННЫЕ НЕ ОТПРАВЛЕНЫ!+chr(10)+Проверьте подключение к интернету и попробуйте еще раз!!);
  end;
end;




где
    IdMessage1: TIdMessage;
    IdSMTP1: TIdSMTP;
    IdEncoderMIME1: TIdEncoderMIME;
спасибо, вопрос снят :)
Добрый!
пользуюсь delphi 2007 и ни как не могу прикрипить пайл через инди,
строчка не проходит
TIdAttachmentFile.Create(IdMessage1.MessageParts,File_name);
может кто поможет как в Indy 10 это сделать
спасибо