Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Сети
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Y3YCJA
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 3
1

Как прикрепить файл к письму?

10.11.2016, 09:15. Просмотров 898. Ответов 2
Метки нет (Все метки)

Добрый день, кто может мне помочь? Мне надо прикрепить файл к письму, а у меня не получается. Вот фрагмент кода:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
if idSmtp1.Connected = TRUE then
begin
  idMessage1.From.Name:='***';
  idMessage1.Subject:='Тема письма';
  idMessage1.From.Address:='откуда';
  idMessage1.Recipients.EMailAddresses:='куда';
  idMessage1.Body.Text:='текст письма';
  idMessage1.ContentType:='text/html; charset=windows-1251';
  idMessage1.ContentTransferEncoding:='8bit';
  if FileExists(Protocol)
  then TIdAttachment.Create(idMessage1.MessageParts,'полный путь до имени файла, который пытаюсь прикрепить');  
  try
  try
      idSmtp1.Send(idMessage1);
      Label5.Caption:=Label5.Caption+#13#10+'Письмо отправлено';
      idSmtp1.Disconnect;
  except on E:Exception do
      Label5.Caption:=Label5.Caption+#13#10+'Письмо не было отправлено';
  end;
  finally
      if idSmtp1.Connected then idSmtp1.Disconnect;
  end;
end;
Ругань на строку
TIdAttachment.Create(idMessage1.MessageParts,Protocol);
потому что видите ли слишком много параметров (E2034 Too many actual parameters)
ему видите ли требуется 1 параметр TidCollection.
Что это за TidCollection? Мой проект в BDS, в нём не совсем так как в Дельфи 7, например, чтобы воспользоваться TIdAttachment, я в uses дописываю IdAttachment.
Кто-то сталкивался с подобным?
На Дельфи 7 этот код у меня работает, файлы спокойно приаттачиваюся.
А тут бабушка упёрлась рогом.

Добавлено через 15 часов 4 минуты
Если использую вместо TIdAttachment - TIdAttachmentFile, и, соответственно, в uses вместо IdAttachment - IdAttachmentFile, то синтаксической ошибки "E2034 Too many actual parameters" не появляется, но файл всё равно не прикрепляется
то есть не прикрепляется как вложение (он в тексте письма в какой-то левой кодировке).
Как сделать??? Может, кто сталкивался???

Добавлено через 1 час 19 минут
Проблема решена, но частично: всё дело было в этих строках:
Delphi
1
2
idMessage1.ContentType:='text/html; charset=windows-1251';
  idMessage1.ContentTransferEncoding:='8bit';
их надо убрать, тогда письмо прикрепляется именно как вложение. Но вот что плохо теперь - текст письма теперь приходится на английском писать. Для моей задачи это несущественно (могу вообще только вложение выслать, да и всё), но вообще интересно, как сделать, чтобы и вложение нормально прикреплялось, и кодировка текста письма была нормальной. Имеется в виду, как это сделать без дополнительных новоротов, когда каждый символ строки переводится в цикле в другую кодировку.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2016, 09:15
Ответы с готовыми решениями:

Indy прикрепить файл к письму
Добрый вечер) Товарищи, подскажите, как прикрепить аррхив к письму??? В инете...

Прикрепить файл при отправке письма на почте
Здравствуйте ребята , Версия Indy : 10.5.9.0 и хочу прикрепить файл на почте ...

Как отправлять сообщение через SMTP и при этом прикрепить изображение?
Помогите разобраться, почему не отправляется. procedure...

Прикрепление картинок непосредственно к письму
Доброго времени суток! Пишу программу, для просмотра писем почтового ящика....

Прикрепить фаил
Господа подскажите пожалуйста, мне в почтовике надо прикрепить фаил как это...

2
NIKOLAYY
820 / 718 / 339
Регистрация: 22.09.2012
Сообщений: 4,995
11.11.2016, 20:10 2
Y3YCJA,
Попробуй кодировку так AnsiToUtf8 или так Utf8ToAnsi.
И на резных версиях делфей по разному чуть, в гугле все кодировки есть если че.
0
Y3YCJA
0 / 0 / 0
Регистрация: 09.11.2016
Сообщений: 3
21.11.2016, 08:43  [ТС] 3
Спасибо, помогло это: AnsiToUtf8
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2016, 08:43

bmp прикрепить к exe
есть картинка в bmp формате и exe как бы прикрепить ее к exe? и вообще...

Как прикрепить файл к письму?
Подскажите, пожалуйста, как можно к сообщению прикрепить файл и все это дело...

Как прикрепить к письму файл и отослать?
Как прекрепить к письму <FONT color=#ff1111>файл и отослать ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru