Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Bug in Quellcode oder Compiler?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
ALWIM



Anmeldungsdatum: 08.08.2006
Beiträge: 1053
Wohnort: Niederbayern

BeitragVerfasst am: 19.07.2026, 19:46    Titel: Bug in Quellcode oder Compiler? Antworten mit Zitat

Hallo Community,
ich habe eine neue Funktion für mein Turnierverwaltungsprogramm geschrieben! Diese sollte eine Datei (XML-Format), für die DWZ-Auswertung für den Deutschen Schachbund erstellen. Aus irgendeinem Grund, wird die Datei unvollständig erstellt? Bei einer Turnierdatei, die 11 Runden hat, wird bei Runde 11, nach der ersten oder zweiten Paarung einfach abgebrochen? Ich habe keine Ahnung warum? Mit -exx finde ich keinen Out of Bounds oder sonst irgendeine Fehlermeldung! Kann es sein, dass im Compiler ein Bug drin ist? Es könnte theoretisch auch ein Bug in meinem Quellcode sein? Wenn ich am Quellcode manche Zeilen zu Kommentaren machen, ist die Datei korrekt oder er bricht an anderer Stelle ab? Gestern auf einem anderen Rechner, wurde die Datei korrekt erstellt, während nur durch hinzufügen von einer Zeile, die Datei wieder unvollständig ist? Ich komme echt nicht mehr weiter?

Vielleicht hat da einer eine Idee? Selbst die KI, hilft mir im Moment nicht weiter. Die findet den Fehler auch nicht!

Ich verwende die aktuellste Compiler Version.

Ps.: Der Quellcode ist nur lauffähig, wenn man sich mein Turnierverwaltungsprogramm als Version 3.88 herunterlädt! STOP.bas einfach durch den neuen Quellcode ersetzen. Die Auswertungsdatei wird über Seite "WEBSEITE" und Mausklick auf DeWIS (GER) erstellt! Der entsprechende Quellcode, der die Datei erstellt, befindet sich in SUB DWZ_Auswertung.

Link zum Quellcode: https://www.freebasic-portal.de/porticula/schachturnierorganisationsprogramm-v3-8x-1873.html

Inhalt einer Turnierdatei zum Test (Test.STOP):
Code:
Aus Datenschutzgründen wieder entfernt!

_________________
SHELL SHUTDOWN -s -t 05


Zuletzt bearbeitet von ALWIM am 21.07.2026, 14:32, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
grindstone



Anmeldungsdatum: 03.10.2010
Beiträge: 1297
Wohnort: Ruhrpott

BeitragVerfasst am: 20.07.2026, 11:12    Titel: Re: Bug in Quellcode oder Compiler? Antworten mit Zitat

Hallo ALWIM,

ALWIM hat Folgendes geschrieben:
...über Seite "WEBSEITE"...

Ich nehme mal an, das sollte eigentlich ein Link werden...


ALWIM hat Folgendes geschrieben:
Link zum Quellcode: https://www.freebasic-portal.de/porticula/schachturnierorganisationsprogramm-v3-8x-1873.html

Es wäre schön, wenn der Quellcode auch Zeilenumbrüche hätte.

Gruß
grindstone
_________________
For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
ALWIM



Anmeldungsdatum: 08.08.2006
Beiträge: 1053
Wohnort: Niederbayern

BeitragVerfasst am: 20.07.2026, 13:53    Titel: Re: Bug in Quellcode oder Compiler? Antworten mit Zitat

grindstone hat Folgendes geschrieben:
Hallo ALWIM,

ALWIM hat Folgendes geschrieben:
...über Seite "WEBSEITE"...

Ich nehme mal an, das sollte eigentlich ein Link werden...


ALWIM hat Folgendes geschrieben:
Link zum Quellcode: https://www.freebasic-portal.de/porticula/schachturnierorganisationsprogramm-v3-8x-1873.html

Es wäre schön, wenn der Quellcode auch Zeilenumbrüche hätte.

Gruß
grindstone
Der Quellcode hat Zeilenumbrüche, aber er wird jedesmal so dargestellt!? Keine Ahnung warum? Wenn man auf Download klickt, wird er korrekt dargestellt, sobald man die heruntergeladene ".bas" Datei öffnet!

Nein, das sollte kein Link werden. Das ist nur der Hinweis, wo die Funktion im Programm zu finden ist!
_________________
SHELL SHUTDOWN -s -t 05
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Berkeley



Anmeldungsdatum: 13.05.2024
Beiträge: 118

BeitragVerfasst am: 20.07.2026, 14:30    Titel: Antworten mit Zitat

Du kannst mit meiner Debug-Bibliothek checken, wo der Fehler passiert:
https://www.freebasic-portal.de/downloads/bibliotheken/debug-tool-library-408.html.

Für jeden anderen ist es viel Arbeit, sich in den Code einzuarbeiten. Ich vermute dass deine Tabelle defekt ist - ein Feld oder eine Zeile fehlt.

Gib' immer wieder Informationen aus z.B. mit DEBUGOUT "i ist "+STR(i) oder DEBUGOUT "Runde "+STR(r)+" erreicht". Die Bibliothek schreibt in "debug.txt".
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ALWIM



Anmeldungsdatum: 08.08.2006
Beiträge: 1053
Wohnort: Niederbayern

BeitragVerfasst am: 20.07.2026, 15:44    Titel: Antworten mit Zitat

Berkeley hat Folgendes geschrieben:
Du kannst mit meiner Debug-Bibliothek checken, wo der Fehler passiert:
https://www.freebasic-portal.de/downloads/bibliotheken/debug-tool-library-408.html.

Für jeden anderen ist es viel Arbeit, sich in den Code einzuarbeiten. Ich vermute dass deine Tabelle defekt ist - ein Feld oder eine Zeile fehlt.

Gib' immer wieder Informationen aus z.B. mit DEBUGOUT "i ist "+STR(i) oder DEBUGOUT "Runde "+STR(r)+" erreicht". Die Bibliothek schreibt in "debug.txt".
Vielen Dank für die Information! Die Bibliothek kannte ich noch nicht. Muss ich mir jetzt mal ansehen. Dachte zuerst, dass ein Bug im Compiler vorliegt, der manchen von euch bereits bekannt ist? Aber ich glaube auch, dass bei mir ein Fehler drin ist! Sicher wieder so eine "Out of Bounds" Geschichte...

Was soll es sonst sein?
_________________
SHELL SHUTDOWN -s -t 05
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ALWIM



Anmeldungsdatum: 08.08.2006
Beiträge: 1053
Wohnort: Niederbayern

BeitragVerfasst am: 21.07.2026, 14:28    Titel: Antworten mit Zitat

Was passiert, wenn man "CLOSE #F" vergisst? Habe gerade gesehen, dass ich den Befehl vergessen habe! Habe den Code jetzt 5x oder 6x angeschaut! Jedes Mal, ist mir das nicht aufgefallen. Das dürfte es jetzt gewesen sein? Test muss ich noch machen. Manchmal sind es die kleinen Dinge, mit großer Wirkung...
_________________
SHELL SHUTDOWN -s -t 05
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Berkeley



Anmeldungsdatum: 13.05.2024
Beiträge: 118

BeitragVerfasst am: 22.07.2026, 15:04    Titel: Antworten mit Zitat

ALWIM hat Folgendes geschrieben:
Was passiert, wenn man "CLOSE #F" vergisst?

Früher waren Betriebssysteme limitiert auf 4-8 Dateien gleichzeitig zu öffnen. Theoretisch hättest du damit das ganze Betriebssystem blockieren können, wenn es Multitasking praktiziert hätte. Im Prinzip schließt man einfach eine Datei wenn man fertig ist. Passieren kann einiges, z.B. wird die Datei nicht geschrieben, wenn das Programm abstürzt oder beendet wird. Wenn du F nicht mit FREEFILE() ermittelst, schreibst du ggf. in die alte Datei weiter bzw. OPEN schlägt fehl als wäre die gewünschte Datei schreibgeschützt oder Ähnliches.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4727
Wohnort: ~/

BeitragVerfasst am: 22.07.2026, 15:43    Titel: Antworten mit Zitat

Wenn das FreeBASIC-Programm regulär beendet wird (mit END oder einfach, weil die letzte Programmzeile ausgeführt wurde), werden die geöffneten Dateien automatisch geschlossen, d. h. die Daten müssten dann auch geschrieben werden. Wenn das Programm zuvor abstürzt, werden wahrscheinlich nicht alle Daten korrekt geschrieben. So oder so sollte eine mit OPEN geöffnete Datei auch wieder mit CLOSE geschlossen werden, allein schon weil das Öffnen mit einer bereits verwendeten, aktiven Dateinummer nicht funktioniert (und nach 255 gleichzeitig geöffneten Dateien ist dann in FreeBASIC sowieso Schluss).

Falls du die XML-Datei schon mal ansehen wolltest, bevor dein Programm beendet war, kann durchaus das fehlende CLOSE die Ursache dafür sein, dass die XML-Datei unvollständig war.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.

-----

"Das wissen doch sowieso nur Nerdinauten, die Schlaumeierologie studiert haben." - coldmirror
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ALWIM



Anmeldungsdatum: 08.08.2006
Beiträge: 1053
Wohnort: Niederbayern

BeitragVerfasst am: 22.07.2026, 19:15    Titel: Antworten mit Zitat

nemored hat Folgendes geschrieben:
Wenn das FreeBASIC-Programm regulär beendet wird (mit END oder einfach, weil die letzte Programmzeile ausgeführt wurde), werden die geöffneten Dateien automatisch geschlossen, d. h. die Daten müssten dann auch geschrieben werden. Wenn das Programm zuvor abstürzt, werden wahrscheinlich nicht alle Daten korrekt geschrieben. So oder so sollte eine mit OPEN geöffnete Datei auch wieder mit CLOSE geschlossen werden, allein schon weil das Öffnen mit einer bereits verwendeten, aktiven Dateinummer nicht funktioniert (und nach 255 gleichzeitig geöffneten Dateien ist dann in FreeBASIC sowieso Schluss).

Falls du die XML-Datei schon mal ansehen wolltest, bevor dein Programm beendet war, kann durchaus das fehlende CLOSE die Ursache dafür sein, dass die XML-Datei unvollständig war.
Das fehlende CLOSE #F, war tatsächlich der Fehler! Jetzt geht es ohne Probleme. Aber zunächst sucht man erstmal wie ein irrsinniger nach dem Fehler...
_________________
SHELL SHUTDOWN -s -t 05
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz