Kod: Tümünü seç
IdAttach := TIdAttachment.Create(IdMessage1.MessageParts,OpenDialog1.FileName);
Kod: Tümünü seç
IdAttach := TIdAttachment.Create(IdMessage1.MessageParts,OpenDialog1.FileName);
Kod: Tümünü seç
private
{ Private declarations }
procedure ResetAttachmentListView;
Kod: Tümünü seç
procedure TfrmMessageEditor.btnAttachmentClick(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
TIdAttachment.Create(IdMsgSend.MessageParts, OpenDialog1.FileName);
ResetAttachmentListView;
end;
end;
procedure TfrmMessageEditor.ResetAttachmentListView;
var li: TListItem;
idx: Integer;
begin
lvFiles.Items.Clear;
for idx := 0 to Pred(IdMsgSend.MessageParts.Count) do
begin
li := lvFiles.Items.Add;
if IdMsgSend.MessageParts.Items[idx] is TIdAttachment then
begin
li.ImageIndex := 0;
li.Caption := TIdAttachment(IdMsgSend.MessageParts.Items[idx]).Filename;
li.SubItems.Add(TIdAttachment(IdMsgSend.MessageParts.Items[idx]).ContentType);
end
else
begin
li.ImageIndex := 1;
li.Caption := IdMsgSend.MessageParts.Items[idx].ContentType;
end;
end;
end;
Kod: Tümünü seç
var
IdAttach1,IdAttach2: TIdAttachment;
try
...
IdAttach1 := TIdAttachment.Create(IdMessage1.MessageParts,edit2.Text);
IdAttach2 := TIdAttachment.Create(IdMessage1.MessageParts,edit3.Text);
finally
IdAttach1.Destroy;
IdAttach2.Destroy;
end;
Ya aslında orda dacoderlord yazdı:Arkadaşlar Destroy kullanmayın, yanlış bir kullanım, Free kullanın.
Bir de bildiğim kadarıyla IdMessage Attachment'ları kendisi Free ediyor. Free etmeye gerek yok yani. Çok zaman oldu. Emin değilim.
Kod: Tümünü seç
TIdAttachment.Create(IdMessage1.MessageParts,edit2.Text);
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Ek1.Text:=OpenDialog1.FileName;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
IdMessage1.Clear;
IdMessage1.From.Text :=Edit1.Text; // kimden geldiği
IdMessage1.ReplyTo.EMailAddresses:=Edit1.Text; // gönderenin mail adresi
IdMessage1.Recipients.EMailAddresses:=Edit2.Text; // gönderilecek adres
IdMessage1.Date:=Date; //günün tarihi
IdMessage1.Subject:=Edit4.Text; // konu su
IdMessage1.Body.Text := memo1.Text; // mesajınız buraya
IdMessage1.Priority:=mpNormal;
// eklenecek dosyalar
if not (Ek1.Text='') then TIdAttachment.Create(IdMessage1.MessageParts,Ek1.Text);
IdMessage1.Body.Assign(Memo1.Lines);
try
IdSMTP1.Send(IdMessage1); // bağlı mesajların gönderimi
finally
IdSMTP1.Disconnect; // bağlantını kesilmesi
end;
end;