как прикрепить несколько файлов и отправить их по

Тема в разделе "Delphi - Сети", создана пользователем Guest_bob_*, 14 ноя 2005.

Статус темы:
Закрыта.
  1. Guest_bob_*

    Guest_bob_* Гость

    Как прикрепить нескольколько файлов и отправить их на определенный e-mail
    без использования почтовых программ.
     
  2. Barmutik

    Barmutik Гость

    Есть несколько способов:

    1. Долгий - всё делать руками самому
    2. Быстрый - используйте компоненты .. например Indy
     
  3. Guest

    Guest Гость

    А можно поподробнее. Я не очень то разбираюсь в программировании. Хотелось бы примерчик.
     
  4. Barmutik

    Barmutik Гость

    Под руками пример использования TNMSMTP:

    Код (Text):
       SynchronizeSMTP.Host := MailSettingsForm.ServerEdit.Text;
      SynchronizeSMTP.Port := StrToInt(MailSettingsForm.PortEdit.Text);
      SynchronizeSMTP.UserID := '';
      SynchronizeSMTP.Connect;
     except
      WaitForm.Hide;
      MessageDlg(MainForm.MultiLanguage.
       TranslateString('Не могу установить связь с почтовым сервером!') + #13#10 +
       MainForm.MultiLanguage.
       TranslateString('Свяжитесь с администратором для разрешения данной проблемы!'), mtError, [mbOK], 0);
      Exit;
     end;
     try
      SynchronizeSMTP.PostMessage.FromAddress := MailSettingsForm.AddressEdit.Text;
      SynchronizeSMTP.PostMessage.FromName := MailSettingsForm.NameEdit.Text;
      SynchronizeSMTP.PostMessage.Subject := MailSettingsForm.SubjectEdit.Text;
      SynchronizeSMTP.PostMessage.ToAddress.Add(MailSettingsForm.ReceiverAddressEdit.Text);
      SynchronizeSMTP.PostMessage.ToBlindCarbonCopy.Add('');
      SynchronizeSMTP.PostMessage.ToCarbonCopy.Add('');
      CopyFile(MailSettingsForm.FileNameEdit.Text, AFileName, nil);
      Compressor.InputFile := AFileName;
      Compressor.OutputFile := ZippedFileName;
      Compressor.Compress;
      SynchronizeSMTP.PostMessage.Attachments.Add(ZippedFileName);
      SynchronizeSMTP.PostMessage.Body.Add(MainForm.MultiLanguage.
       TranslateString('Отчёт от') + ' ' +
       FormatDateTime('dd.mm.yyyy hh:nn:ss', Now));
      SynchronizeSMTP.SendMail;
     
  5. Barmutik

    Barmutik Гость

    Если сильно надо как через Indy то можно поискать .. хотя у них там в примерах есть полный пример как это сделать...
     
  6. Guest

    Guest Гость

    Спасибо!
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей