![]() |
Re: Indy - TIdMessage - Encoding - Fortschrittsanzeige
Hallo,
schau Dir die Funktion mal an, eventuell hast Du ja auf Anhieb eine Idee, wie es schneller gehen könnte. Wenn Du es dann umsetzt, um so besser. Und wenn's dann demnächst in die Indy's übernommen wird, dann noch viel besser. Per Stream dürfte das deutlich schneller gehen. Kommt in Deiner Version auch noch häufig sowas vor?
Delphi-Quellcode:
In der 10er Version sieht die Methode deutlich anders aus, als in meiner Version, aber ob es nicht noch schneller geht?
Line := Line + s;
|
Re: Indy - TIdMessage - Encoding - Fortschrittsanzeige
Ich benutze auch die 10er Version und so etwas wie
Delphi-Quellcode:
kommt da nicht vor.
Line := Line + s;
Gruß Micha |
Re: Indy - TIdMessage - Encoding - Fortschrittsanzeige
Die 10er Version scheint deutlich überarbeitet zu sein im Vergleich zur 9er. Bei meinem Delphi 7 (9er?) ist halt noch das Line := Line + s drin.
|
Re: Indy - TIdMessage - Encoding - Fortschrittsanzeige
Leider konnte ich mein Problem bisher immernoch nicht lösen.
Arbeitet denn wirklich keiner hier sonst noch mit der Indy-SMTP-Komponente, der mir einen Tip geben könnte? Gruß Micha |
Re: Indy - TIdMessage - Encoding - Fortschrittsanzeige
Hab inzwischen selbst eine Lösung gefunden. Ich schreibe die gesamte Message einfach vor dem Senden in einem Memory-Stream. Von dem kann ich dann die Größe auslesen und als Maximum dem Progressbar zuweisen. Die Position setze ich dann im OnWork-Ereignis der TIdSMTP-Komponente. So habe ich jetzt wenigstens eine Gesamtfortschritt beim Encodieren :-)
PS: Der Flaschenhals liegt glaube übrigens nicht in TIdEncoderQuotedPrintable.Encode, dort kommt er bei mir nur bei den Text-Parts der Message durch und das geht ziemlich schnell. Die Anhänge scheinen woanders codiert zu werden. Gruß Micha |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 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