Eben.
Was ist das denn für eine Fehlerbehandlung?
Delphi-Quellcode:
MessageBox(
Handle,
PChar('
Error while trying to send email'),
PChar('
Error'),
MB_ICONERROR
or MB_OK);
Das ist viel zu ungenau und ausserdem sollte man bei Fehler
Exceptions verwenden.
Delphi-Quellcode:
// z.B. so
raise Exception.CreateFmt('
can''
t open MAPI to send email'#13#10'
return code was %d', [dwRet])
So weiss man zumindest dass
MAPI verwendet wird und man kennt den Returncode.
Optimalerweise übersetzt man die
MAPI Returncodes noch in Klartext und verwendet eine eigene
Exception-Klasse.
Was würde wohl passieren falls jemand diesen Code schreibt und
MAPI nicht richtig eingerichtet ist?
Delphi-Quellcode:
for i := 1 to 2000 do
SendEMail(self.Handle, mailinglist);
Man müsste 2000 Mal eine Fehlermeldung bestätigen ohne zu wissen wie oft man noch klicken muss.
Dann kann man das Programm nur noch mit dem Taskmgr abschiesen.
Mit einer
Exception kommt die Fehlermeldung nur einmal und die Schleife und alles davor wird abgebrochen weil es eh sinnlos ist bei dem Fehler weiterzumachen.