Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2016, 11:12   #1
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию Прикрепить файл при отправке письма на почте

Здравствуйте ребята , Версия Indy : 10.5.9.0 и хочу прикрепить файл на почте
Код:
{$R *.dfm}
uses
  IdAttachmentFile ,ComObj;


procedure TForm1.Button2Click(Sender: TObject);
var
  SMTP    : TIdSMTP;
  msg     : TIdMessage;
  SSLOpen : TIdSSLIOHandlerSocketOpenSSL;
  Attach : TIdattachmentFile;
  aAttachmentFileFullName: string;

begin
  SMTP := TIdSMTP.Create(Application);
  SMTP.Host := 'smtp.mail.ru';
  SMTP.Port := 465;
  SMTP.AuthType := satDefault;
  SMTP.Username := 'xxxxxxxx@mail.ru'; // из какой почти 
  SMTP.Password := '*****';    /// Пароль эту почти 
  //--- Файл
  aAttachmentFileFullName:= 'D:\Moi_otchet.xlsx';

  //это необходимо использовать для SSL
  SSLOpen := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  SSLOpen.Destination := SMTP.Host+':'+IntToStr(SMTP.Port);
  SSLOpen.Host := SMTP.Host;
  SSLOpen.Port := SMTP.Port;
  SSLOpen.DefaultPort := 0;
  SSLOpen.SSLOptions.Method := sslvSSLv23;
  SSLOpen.SSLOptions.Mode := sslmUnassigned;

  SMTP.IOHandler := SSLOpen;
  SMTP.UseTLS := utUseImplicitTLS;

  msg := TIdMessage.Create(Application);

  msg.Subject := 'Название темы '; // Название темы
  msg.From.Address := 'xxxxxxx@mail.ru'; //  Мой майл
  msg.From.Name := 'Фио отправители';  // Фио отправители
  msg.Recipients.EMailAddresses := 'Получатель@gmail.com';    // Кому   мы отправляем ! Получатель
   // Кодировка
  msg.ContentType := 'text/plain'; //CharSet = UTF-8';
  msg.CharSet := 'UTF-8';
  //-------------
  msg.Body.Text := AnsiToUtf8('Привет ниничка как дела ? Все нормально у тебя ?');
  //-- работа со вложенными файлами
  if (aAttachmentFileFullName <> '') then
  begin
    Attach  := TIdAttachmentFile.Create(IdMessage1.MessageParts, aAttachmentFileFullName);
  end;
  //-----
  SMTP.Connect;
  if SMTP.Connected then
    begin
      SMTP.Send(msg);
      ShowMessage ('Сообщение отправлено');
    end else
      ShowMessage ('Не удалось отправить сообщение');
  SMTP.Disconnect();
  SMTP.Free;
  msg.Free;

end;
Скажите пожалуйста почему файл не отправляется ? Где я допускаю ошибка ?
xxbesoxx вне форума Ответить с цитированием
Старый 31.03.2016, 14:58   #2
vlad1389
Форумчанин
 
Регистрация: 02.02.2016
Сообщений: 290
По умолчанию

Код:
Attach  := TIdAttachmentFile.Create(msg.MessageParts, aAttachmentFileFullName);
vlad1389 вне форума Ответить с цитированием
Старый 01.04.2016, 18:14   #3
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Разобрался . тему можно закрыть...

Последний раз редактировалось xxbesoxx; 01.04.2016 в 19:25.
xxbesoxx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кодировка при отправке письма moshkin_ura PHP 2 20.10.2012 14:55
Как в word при слиянии и отправке писем, вставить поле из бд в тему письма? Ontos Microsoft Office Word 0 29.12.2011 19:02
Как обойти предупреждение Outlook при отправке диапазона по почте? Sergey112233 Microsoft Office Excel 11 07.11.2011 19:33
Проблемы с кодировкой при отправке письма!!! $T@LKER Работа с сетью в Delphi 2 05.08.2010 21:53