![]() |
Mehrere Dateien als Anhang verschicken.
Hallo
ich verschicke via IdSMTP und IdMessage mails in einem Programm. Jetzt wollte ich noch nen Anhang hinzufügen und hab dafür dann folgenden Code genommen:
Delphi-Quellcode:
Nur jetzt möchte ich nicht nur eine Datei sondern mehrere die ich mir aus nem Array hole verschicken.
var
iAttachment : TIdAttachmentFile ; iFile: String; begin ... iAttachment := TIdAttachmentFile.Create(IdMessage.MessageParts, iFile) ; Kann mir jemand sagen wie ich das am besten anstelle? LG Sir K |
Re: Mehrere Dateien als Anhang verschicken.
|
Re: Mehrere Dateien als Anhang verschicken.
Ich habs mal ausprobiert aber ich bekomme Zugriffsverletzungen gemeldet wenn ich die mail versenden möchte:
Delphi-Quellcode:
Lg
var
iAttachment: TIdAttachmentFile; i: Integer; begin ... i:=0; while not(MyAttatchments[i] = '') do begin iAttachment.Create(IdMessage1.MessageParts, MyAttatchments[i]); i:=i+1; end; Sir K |
Re: Mehrere Dateien als Anhang verschicken.
sollte es nicht
while not(MyAttatchments[i] = '') do heissen? Im Übrigen halte ich das Konstrukt aus dem Beispiel von naphets für besser ... |
Re: Mehrere Dateien als Anhang verschicken.
Zitat:
LG Sir K |
Re: Mehrere Dateien als Anhang verschicken.
Hi,
Zitat:
Also eher:
Delphi-Quellcode:
Ich würde das iAttachment aber ganz weglassen und das so machen:
while not(MyAttatchments[i] = '') do
begin iAttachment := TIdAttachmentFile.Create(IdMessage1.MessageParts, MyAttatchments[i]); i:=i+1; end;
Delphi-Quellcode:
Gruß Assertor
while not(MyAttatchments[i] = '') do
begin TIdAttachmentFile.Create(IdMessage1.MessageParts, MyAttatchments[i]); i:=i+1; end; |
Re: Mehrere Dateien als Anhang verschicken.
Also mit diesem Code werden zwar die entsprechenden Attatchments angehängt allerdings kommen diese dann als *.dat an.
Ich hab zum Beispiel mal zwei *.jpeg angehängt und in der eMail tauchen diese dann als ATT00017.dat und ATT00014.dat auf. Weis jemand was da schief läuft?
Delphi-Quellcode:
LG
i:=0;
while not(MyAttatchments[i] = '') do begin TIdAttachmentFile.Create(IdMessage1.MessageParts, MyAttatchments[i]); i:=i+1; end; Sir K |
Re: Mehrere Dateien als Anhang verschicken.
Hi,
freut mich, daß es funktioniert. Das mit den Anhängen ist bekannt seit ein paar Monaten, steht im QC bei CodeGear und in meinem Blog: ![]() Entweder die Indy Version vollständig aktualisieren oder wie im Blog beschrieben nur die IdMessageClient.pas. Gruß Assertor |
Re: Mehrere Dateien als Anhang verschicken.
Also ich wollte jetzt nur den Code ändern weil ich jetzt nicht die ganze INDY aktualiesern will.
Jetzt hab ich nur das Problem, dass ich die IdMessageClients.pas nirgendwo finden kann. bei mir existiert das Verzeichnis C:\Program Files\CodeGear\RAD Studio\6.0\source\Indy\Indy10\Protocols\ nur bis zum C:\Program Files\CodeGear\RAD Studio\6.0\source\ Gibts ne Möglichkeit im RAD Studio zu schaun wo die liegen? LG Sir K |
Re: Mehrere Dateien als Anhang verschicken.
Hi Sir K,
Zitat:
Gruß Assertor |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz