Einzelnen Beitrag anzeigen

TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Indy IdAttachment, zu viele Paramenter ??

  Alt 21. Jul 2005, 17:41
Hallo,

ist schon eine kleine Weile her, dass ich da mal mit Indy9 herumgekurvt bin, aber zur Not könnte man ja in der fraglichen Zeile auch den zweiten Parameter erstmal weglassen und den Filenamen (des zu attachenden Files) dann nachtragen:

Delphi-Quellcode:
with TIdAttachment.Create(msg.MessageParts) do begin
  Filename := APfad;
end;
Dann gibt's nämlich keine Compiler-Errors mehr, sondern nur noch mehr Warnungen ala:

[Warnung] Unit1.pas(50): W1020 Instanz von 'TIdAttachment' mit der abstrakten Methode 'TIdAttachment.OpenLoadStream' wird angelegt

Wenn du das Ganze dann startest, gibt's als nächstes eine Exception und zwar eben auch wieder von so einer ähnlich lautenden Klasse: EAbstractError ...was ja mehr oder weniger wieder gut zu den Warnungen davor passt. Wahrscheinlich werden also zum Stream-mäßigen Verpacken eines solchen Attachments Methoden benötigt, die diese Klasse noch nicht besitzt. Das ist also alles so ähnlich wie das Verhältnis zwischen TStrings und seinem Nachkommen: TStringlist. Ergo (wenn ich jetzt nichts gänzlichst auf dem Holzweg bin) müsste es dementsprechend also bei Indy10 event. ein Nachfolge-Objekt von TIdAttachment geben, welches diese davor noch fehlenden Methoden dann besitzt und für den normalen Anwendungszweck damit auch das geeignetere wäre. Leider habe ich aber momentan noch keine Indy10-Hilfe gedownloaded, so dass du event. also mal selbst +/- etwas in diese Richtung forschen müsstest.


PS. Ok, ich habe auch das noch schnell gemacht, weil's mich selbst mal wieder interessiert hat ...und es war wie ich es vermutet hatte. Die Klasse die du dafür jetzt zu benutzten hast lautet nun: TIdAttachmentFile (...und zufälligerweise klappt es damit dann auch).
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat