Moin !
Ich verwende einen TIdIMAP4 Client um Mails von einem Exchange abzuholen. Soweit klappt das auch, aber von zeit zu Zeit funktioniert der Connect nicht - meist weil der Exchange nicht erreichbar ist.
Nun habe ich in meinem Code folgende Stelle:
Delphi-Quellcode:
MailReader.Connect(true);
if MailReader.TheImap.Connected then begin
SiMain.LogColored(clGreen, 'IMAP : Server connected successfully!');
SiMain.LogMessage('IMAP : CheckState : ' + MailReader.CheckState);
SiMain.LogMessage('IMAP : Folder in Mailbox : ' + MailReader.UsersFolders.CommaText);
SiMain.LogMessage('IMAP : GreetingBanner : ' + MailReader.TheImap.GreetingBanner);
ProcessStep := PS_MAIL_GET;
end else begin
SiMain.LogFatal('IMAP : Couldn´t connect to Server !');
ProcessStep := PS_END; // Beenden bei Server No Connect
end;
Im Normalfall klappt das, aber wenn der Connect eben nicht klappt macht meine Anwendung eine Bauchlandung.
Nun stellt sich mir die Frage was die beste Methode wäre das abzufangen. Reicht es das in eine Try Except zu kapseln?
Also in etwa so:
Delphi-Quellcode:
try
TheImap.Connect(True);
except
// Exception behandeln
end;
Oder muss / sollte man da noch mehr Aufwand betreiben?