powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / отправка почты с вложениями
6 сообщений из 6, страница 1 из 1
отправка почты с вложениями
    #39731585
terlalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.
Пытаюсь отправить письмо.
Причем, мне нужно письмо, с HTML - тегами и вложение в виде отдельного файла.
Для того, что бы корректно отображался HTML, устанавливаю

idmessage1.ContentType:='text/html';

но, при этом вложение отображается не отдельным файлом, а попадает в текст письма.
Вложение корректно отображается при

IdMessage1.ContentType:='text/plain';

Но при этом в тексте письма появляются теги.
Как сделать, что бы нормально отображалось письмо и вложение было отдельным файлом?
...
Рейтинг: 0 / 0
отправка почты с вложениями
    #39731596
Cobalt747
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полностью код показывай
...
Рейтинг: 0 / 0
отправка почты с вложениями
    #39731607
terlalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
     idmessage1.ContentType:='text/html; charset=windows-1251';
     IdMessage1.Body.text:=UTF8Encode(RichEdit1.text);
     IdMessage1.Subject:=UTF8Encode(edit1.Text); 
     IdMessage1.From.Address:= ComboBox2.Items [ComboBox2.ItemIndex]; 
     IdMessage1.Recipients.EMailAddresses:=edit1.Text; 
     IdMessage1.IsEncoded:=true;


 for i := 0 to form15.ListBox1.Items.Count-1 do
  Begin
  j := ListBox1.Items.Strings[i] ;
   if j <> '' then   attach := TIdAttachmentFile.Create(IdMessage1.MessageParts, j );
  End;

  try
    IdSMTP1.Connect();
    IdSMTP1.Send(form15.IdMessage1);
    showmessage('Сообщение отправлено');
  except
    showmessage('Ошибка при отправке сообщения');
  end;
  IdSMTP1.Disconnect;



Модератор: Пользуйтесь тегом (кнопкой) SRC для оформления кода, пожалуйста.
...
Рейтинг: 0 / 0
отправка почты с вложениями
    #39731626
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
отправка почты с вложениями
    #39731889
On-Lite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я в своё время использовал rar консольный на отправку почты. для создания письма и пользователь бы выбирал, кому куда отправить.
Типа rar.exe a -ieml namearch.rar .\bases\*.*
...
Рейтинг: 0 / 0
отправка почты с вложениями
    #39732159
terlalex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел решение!
нужно для каждой части устанавливать тип контента

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
  idtTextPart := TIdText.Create(IdMessage1.MessageParts, nil);
  idtTextPart.ContentType  := 'multipart/alternative';
  idtTextPart.ParentPart := -1;

  idtTextPart := TIdText.Create(IdMessage1.MessageParts, nil);
  idtTextPart.ContentType:='text/plain';
  idtTextPart.CharSet := 'windows-1251';
   idtTextPart.Body.Assign(RichEdit1.LINES); // описание в текстовом виде
  idtTextPart.ParentPart := 0;

  idtTextPart:= TIdText.Create(IdMessage1.MessageParts, nil);
  idtTextPart.ContentType := 'text/html';
  idtTextPart.CharSet := 'windows-1251';
  form15.RichEdit1.SelectAll;
      form15.RichEdit1.CopyToClipboard;
  idtTextPart.Body.Add(UTF8Encode(ClipboardToHTML(form15.RichEdit1))); //Текст сообщения);// описание в html виде
  idtTextPart.ParentPart := 0;

   // добавление Attach (по аналогии можно несколько)

  for i := 0 to ListBox1.Items.Count-1 do
  begin
    ATT := TIdAttachmentFile.Create(form15.IdMessage1.MessageParts, AnsiToUtf8(form15.ListBox1.Items.Strings[i]));
    with ATT do
    begin
      ContentType := 'application/octet-stream';
      FileName    := AnsiToUtf8(form15.ListBox1.Items.Strings[i])         ;
    end;
  end;



Модератор: Пользуйтесь тегом (кнопкой) SRC для оформления кода, пожалуйста.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / отправка почты с вложениями
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]