Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Вниз

создание TIdAttachment   Найти похожие ветки 

 
Quattro ©   (2007-04-19 22:47) [0]

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

TForm3 = class(TForm)
   MailMessage: TIdMessage;
   AttachmentDialog: TOpenDialog;
   ledHost: TLabeledEdit;
   ledFrom: TLabeledEdit;
   ledTo: TLabeledEdit;
   ledCC: TLabeledEdit;
   ledSubject: TLabeledEdit;
   ledAttachment: TLabeledEdit;
   Memo2: TMemo;
   Label1: TLabel;
   btnSendMail: TBitBtn;
   Memo1: TMemo;
   Button1: TButton;
   LabeledEdit1: TLabeledEdit;
   LabeledEdit2: TLabeledEdit;
   SMTP: TIdSMTP;
   procedure btnSendMailClick(Sender: TObject);
   procedure SMTPStatus(ASender: TObject; const AStatus: TIdStatus;
     const AStatusText: string);
   procedure Button1Click(Sender: TObject);
 private

 public
   { Public declarations }
 end;

var
 Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.btnSendMailClick(Sender: TObject);
begin
Memo1.Clear;
// установка SMTP
SMTP.Host:=ledHost.Text;
SMTP.Port:=25;
// установка сообщения
Smtp.AuthType:=atNone; // atNone
Smtp.Username:=LabeledEdit1.Text;
Smtp.Password:=LabeledEdit2.Text;
//
MailMessage.From.Name:=ledFrom.Text;
MailMessage.Subject:=ledSubject.Text; // тема
MailMessage.From.Address:=ledFrom.Text; // адрес отправителя
MailMessage.Recipients.EMailAddresses:=ledTo.Text+","+ledCC.Text; // получатель + копия
MailMessage.Body.Text:=Memo2.Text; // текст сообщения
if FileExists(ledAttachment.Text)
then TIdAttachment.Create(MailMessage.MessageParts,ledAttachment.Text);
// отправка почты
try
 try
  SMTP.Connect(1000);
  SMTP.Send(MailMessage);
  ShowMessage("Письмо отправлено!");
 except on E:Exception do
  begin
   Memo1.Lines.Insert(0,"Статус отправки: ERROR - "+E.Message);
   ShowMessage("Письмо не отправлено!");
  end;
 end;
finally
 if SMTP.Connected
 then SMTP.Disconnect;
end;
end;

procedure TForm3.SMTPStatus(ASender: TObject; const AStatus: TIdStatus;
 const AStatusText: string);
begin
Memo1.Lines.Insert(0,"Статус отправки: "+AStatusText);
end;

procedure TForm3.Button1Click(Sender: TObject);
begin
if AttachmentDialog.Execute
then ledAttachment.Text:=AttachmentDialog.FileName;
end;

end.


 
Quattro ©   (2007-04-19 22:49) [1]

ещё вопросик...почему

SMTP.Connect(1000);

ругается There is no overloaded version of "Connect" that can be called with these arguments


 
Megabyte ©   (2007-04-20 09:49) [2]

Даже не зная английского, по-моему тут все понятно: нет перегруженных версий данного метода, вызываемых с подобными параметрами. Убери нафиг параметры, в данном методе они не нужны.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.05.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.054 c
2-1177072185
Kostafey
2007-04-20 16:29
2007.05.13
3 простых вопроса


4-1166094492
niko
2006-12-14 14:08
2007.05.13
Создание окна в потоке с помощью ф-й WINAPI (в dll)


1-1173864928
kyn66
2007-03-14 12:35
2007.05.13
Правильно-ли работает RandomRange ?


4-1166091397
niko
2006-12-14 13:16
2007.05.13
Получение хендла подгружаемой dll из неё же в С


2-1176990297
redlord
2007-04-19 17:44
2007.05.13
функция возвращающая УНИКАЛЬНОЕ число





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский