Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.119 Beiträge
 
Delphi 12 Athens
 
#2

AW: Mailversand nur einmal möglich

  Alt 28. Sep 2021, 09:33
Mal ganz einfach auf die Idee gekommen vor/nach dem Senden die Connection wieder zu trennen? (immer neuverbinden)

Zitat:
Mailen.IdMessage1.Clear;
Hier kannst du auch nur hoffen, dass wirklich alles nötige bereinigt wird.



Nja, wenn du keine tausenden Mails die Sekunde versendest,
dann gäbe es doch praktisch keine Nachteile alle Mail-Komponenten bei jedem Senden dynamisch zu erstellen und am Ende wieder freizugeben,
und schon kann es auch keine übergreifenden Problemchen geben, zwischen zwei aufrufen.


Und sag bitte nicht, dass "Mailen" die globale Variable für TMailen ist.
Die Methde ist schon in dieser Klasse, also verwendet man hier niemals die globale Variable .... wenn nötig, dann darf man Self benutzen.


Und was die Fehlerbehandlung angeht:
Wieso kommt immer wieder wer auf die dämliche unpraktische Idee mit ShowMessage den Programmfluß zu unterbrechen?
* entweder richtig mit Exceptions arbeiten (dann braucht die Funktion auch keinen Result)
* oder einen Result Record oder z.B. ein LastErrorText-Property in TMailen, was ma bei Result=False extern ausgewertet werden kann
* und schon lässt sich diese Funkton/Prozedur auch gefahrlos automatisiert nutzen (Fehlerbehandlung da, wo aufgerufen wurde, z.B. schön mit try-except und ohne einen Deadlock zu befürchten)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (28. Sep 2021 um 09:41 Uhr)
  Mit Zitat antworten Zitat