![]() |
Datenbank: MySQL • Version: 3.23 • Zugriff über: ZeosDBO 6.1.5
Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anzeigt
Hallo,
ich bin von Delphi 5 auf 7 umgestiegen, und im Zuge dessen von ZeosDBO 5.4 auf 6.1.5 Um eine Programmunterbrechung durch ein sich öffnendes Fehlermeldungsfenster (z.B. weil die Datenbank vorrübergehend nicht erreichbar ist) zu verhindern, benutzte ich bisher den folgenden try-except-Block: try dbMain.Connected:= True; //versucht Verbindung herzustellen Label1.Caption:= 'verbunden'; except on E:EDatabaseError do begin Label1.Caption:= 'z.Z. nicht verbunden'; end; end; Dies zeigt aber bei ZeosDBO 6.1.5 keinerlei Wirkung mehr. Es popt sofort ein Meldungsfenster "SQL Error: Can't connect to MySQL server on 'localhost' (10061)" auf, und das Programm steht (bis halt jemand auf OK klickt, aber das Programm soll ja unbeaufsichtigt laufen). Wie kann ich dies auch unter ZeosDBO 6.1.5 wieder verhindern ? Vielen Dank für Eure Antworten. Frank |
Re: Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anz
Moin,
herzlich Wilkommen in der DP. Zum Problem : Du fängst den falschen Fehler ab. Bei ZEOS heissen die, glaub ich, EZ???ERROR. Oder aber Du fängst mit E: Exception alles ab. Tschüss, Lutz |
Re: Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anz
Hi Lutz,
im Debug-Modus kommt der Hinweis ...Exception in der Klasse EZSQLException aufgetreten... deshalb habe ich es mal mit "on E: EZSQLException do..." und mit "on E: EZSQLError do..." probiert, bei beiden --> Fehler "Undefinierter Bezeichner". Muß man da noch irgend was einbinden? Ich kenne mich mit dem Abfangen von Fehlermeldungen nicht so aus. Bei der Variante "on E: Exception do..." wird zwar die Anweisung hinter do... ausgeführt, aber das Fehlermeldungsfenster wird trotzdem angezeigt und unterbricht damit das Programm. Vielleicht fällt Euch ja noch eine Lösung ein. Frank PS: Ich hab natürlich auch schon bei ![]() Englisch reich, haben dort einige ähnliche Fragen, aber noch keine bzw. keine brauchbaren Antworten bekommen. |
Re: Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anz
Hi,
füge doch einfach sowas ein:
Delphi-Quellcode:
try
... ... except //no-op end; end; |
Re: Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anz
Oder einfach Delphi sagen, dass du den Exceptiontyp nicht im Debugger um die Ohren geschmissen bekommen willst. ;)
|
Re: Wie verhindern das ZeosDBO ein Fehlermeldungsfenster anz
Hi Leute,
beim Sichten einiger News-Beiträge ist mit aufgefallen, das bei einigen Code-Bsp. der Befehl exit; nach except auftaucht. Das habe ich mal ausprobiert, und siehe da es klappt. Es popt nun kein Fehlermeldungsfenster mehr auf, das Programm läuft weiter. Mein Bsp.-Code:
Delphi-Quellcode:
Wenn ich die Sache mit der Fehlerbehandlung richtig verstanden habe, dürften hier
try
dbMain.Connected:= True; //versucht Verbindung herzustellen Label1.Caption:= 'verbunden'; except Label1.Caption:= 'z.Z. nicht verbunden'; exit; end; nur die Fehler abgefangen (und die entspr. Meldungen unterdrückt) werden die bei den Befehlen zwischen try und except entstehen können, also z.B. keine Vernindung mit der Datenbank möglich ? Frank [edit=Sharky]Delphi-Tags eingefügt. Mfg, Sharky[/edit] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:03 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