![]() |
ADO Fehlermeldungen abstellen
Ich bekomme in meinem Programm immer wieder Fehlermeldungen wie fehlendes Zeilenhandling oder falsches Lesezeichen obwohl mein Programm sehr gut funktioniert.
Ist es möglich, einfach alle Fehlermeldungen für den Endanwender abzustellen? Ralf |
Re: ADO Fehlermeldungen abstellen
Hallo Ralf,
Zitat:
b) baue einen try except um deine Abfragen ein und frage im Exception-Teil nach nichts ab. |
Re: ADO Fehlermeldungen abstellen
Try Except habe ich schon probiert, das funktioniert nicht. Die Fehlermeldungen mit falschem Lesezeichen entstehen wahrscheinlich nicht durch meinen Programmcode selbst
Ich suche eine Möglichkeit, alle Fehlermeldungen abzufangen, irgendwo mit Errorhandling oder so |
Re: ADO Fehlermeldungen abstellen
Kannst du code zeigen, wo es zu falschen Lesezeichen kommt?
Delphi-Quellcode:
wenn hier nicht die Meldung erscheint, dann steckt es in den ADO-Komponenten oder es kommt vom DB-Server und ADO/OLEDB fängt es wiederum ab.
try
Dataset.Close; Dataset.Open; except on E : Exception do ShowMessage (E.Message); end; Wie entstehen bei dir falsche Lesezeichen? |
Re: ADO Fehlermeldungen abstellen
Zitat:
aktuellen Datensatz zurückkehren können. Es gibt nun 2 Fehlerquellen:
Zitat:
Stell dir vor, du möchtest eine Datei mit MS Word öffnen und nichts passiert; nicht mal ne Fehlermeldung erscheint. Du würdest die Programmierer verfluchen. :zwinker: |
Re: ADO Fehlermeldungen abstellen
Vielen Dank für Eure Rückmeldungen. Die Lesezeichen-Fehlermeldung ist nur eine von verschiedenen Meldungen. Das verflixte ist aber, daß ich das nicht simulieren kann. Ich habe gerade alles mögliche versucht, um mein Programm zu Fehlermeldungen zu veranlassen, es funktioniert alles reibungslos. Ich benutze einen Serverseitigen Cursor, da mit Clientseitigem Cursor bei Eingaben mehrerer Benutzer im Netz schon Daten verloren gegangen sind, die nicht rechtzeitig gespeichert wurden. Das soll auch so bleiben (Lieber Fehlermeldungen und kein Datenverlust). Ich kann auch nicht sagen, welche Funktion die Fehlermeldung erzeugt, deshalb kann ich Sie auch nicht mit try except behandeln (oder ich müsste im gesamten Code Try Except-Schleifen eingeben, da ich vor lauter Schleifen sowieso kaum noch die Übersicht bewahre, möchte ich das vermeiden). Ich habe das Gefühl, das das DBGrid irgendwie Schuld daran ist. Ich habe gehört, das DBGrid von Delphi ist sowieso nicht so ganz hundertprozentig fehlerfrei programmiert. :roteyes:
Also doch einfach alle Fehlermeldungen ausschalten, aber das will mir shmia ja nicht verraten (hat wohl seine guten Gründe, da Fehlermeldungen sonst ja sehr brauchbar sind) :warn: Falls bei meinen ungenauen Angaben keiner eine Idee hat, dann mache ich mich wohl doch an die Arbeit und baue in jede Procedure und function ein try except ein :coder: |
Re: ADO Fehlermeldungen abstellen
Jede Exception, die nirgends abgefangen wurde kommt bis ganz oben an die Benutzeroberfläche.
Die letzte Chance ist im Event Application.OnException. Jetzt wäre es ja schlau, einen Stacktrace durchzuführen, damit man den Ursprung sieht. In der ![]() Dazu muss man ausserdem noch in den Linker Optionen (mit TD32-DEbug Info) und Compiler-Optionen (Stack Frames) aktivieren. Das Programm wird so einiges grösser, aber das macht ja nix. |
Re: ADO Fehlermeldungen abstellen
Lieber shmia
Vielen Dank für den Tipp mit der Fehlerbehandlung mittels Application.OnException. Nachdem Du mir diesen Tipp gegeben hast, konnte ich mit Hilfe von Büchern und Internet diese Funktion benutzen, jetzt funktioniert alles bestens. Alle Fehlermeldungen werden abgefangen und in einem LogFile gespeichert, ich kann alle Fehler weiterhin lesen und versuchen zu korrigieren, der Endanwender bekommt davon wie gewünscht nichts mit und kann weiterarbeiten, falls der Programmablauf durch den Fehler nicht wesentlich behindert wird Gruß Ralf :) :-D :thuimb: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 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