PureBasic - OnError
Einleitung
Diese Bibliothek bietet eine Möglichkeit, um Programmfehler (Programmabstürze) aufzuspüren, ähnlich wie mit dem PureBasic Debugger, aber ohne die Nachteile einer größeren Dateigröße und geringerer Ausführungsgeschwindigkeit wie bei Nutzung des Debuggers. Auf diesem Weg kann die finale Version eines Programms, welche an den Endanwender geliefert wird, immer noch Fehler abfangen und dem Anwender einige Informationen über den Fehler zur Verfügung stellen, welche er dann an den Entwickler zurückmelden kann.
Der PureBasic Debugger ist immer noch das bessere Werkzeug, um Fehler (englisch "Bugs") während der Entwicklungsphase zu finden. Grund dafür ist, dass der Debugger viel mehr detaillierte Informationen über den Status des Programms (wie z.B. die aktuellen Werte von Variablen) liefert und eine ganze Reihe an interaktiven Features zum schnellen Auffinden von Bugs bietet.
Hinweis: Wenn sowohl diese Bibliothek als auch der PureBasic Debugger verwendet werden, werden nicht alle Fehler von der OnError Bibliothek abgefangen, da einige Überprüfungen durch den Debugger bereits vorgenommen und gemeldet werden, noch bevor der entsprechende Programmcode mit dem Fehler ausgeführt wird.
Diese Bibliothek kann mit Hilfe der Befehle ErrorFile() und ErrorLine() Informationen über die Quellcode-Datei und die Zeile, bei der der Fehler auftrat, liefern. Allerdings nur, wenn dieses Feature während des Kompilierens aktiviert wurde (es verursacht eine sehr geringe Verlangsamung der Ausführungsgeschwindigkeit, um die Zeilennummern zu beobachten). Zur Aktivierung dieses Features setzen Sie das Häkchen bei "OnError-Unterstützung einschalten" in den Compiler-Optionen oder geben beim Kompilieren über die Kommandozeile den /LINENUMBERING (Windows) bzw. --linenumbering (Linux, Mac OSX) Kommandozeilen-Switch an.
Befehlsübersicht
ErrorAddress
ErrorCode
ErrorFile
ErrorLine
ErrorMessage
ErrorRegister
ErrorTargetAddress
ExamineAssembly
InstructionAddress
InstructionString
NextInstruction
OnErrorCall
OnErrorDefault
OnErrorExit
OnErrorGoto
RaiseError
Beispiel
OnError.pb
Unterstützte OS
Alle