ofstream-Bug in BCB2k7?



  • Hi!
    Vorab mal "Code":

    #include <fstream>
    std::ofstream File("x.x");
    //File << "Funzt's?";         
    File.close();
    

    Ja, mehr ist nicht!
    Jedes mal wenn ich das Programm starte, bleibt er bei folgender Zeile stehen:

    if (fclose(_Myfile) != 0)
    

    Anstelle von x.x hab ich z.B. u.a. color.ini stehen

    Unter dem BCB6 funktionierte das immer 😮
    Keine Ahnung an was das liegt, könnte das vielleicht bitte einmal ein anderer BCB2k7-Besitzer ausprobieren, ob das bei ihm dasselbe ist?

    Folgende Meldung erscheint:

    Falsches Datei-Stream (0x3289E484) wurde an die Funktion weitergegeben.
    

    Aber wie gesagt, ich habe ja nicht nur x.x sondern auch andere "Pfade" ausprobiert.
    Hilfe!



  • Hallo,

    Funktioniert bei mir problemlos. Wo ist denn diese Zeile?

    if (fclose(_Myfile) != 0)
    


  • Eben wenn ich das Programm starte, dann die Prozedur aufrufe, in welcher der gesagte Text steht, kommt der BCB wieder in den Vordergrund (ohne Exception!) und öffnet die Datei fstream (.h) und zwar genau in der Zeile 180. Mich wundert nämlich auch, dass der BCB einfach den Fokus bekommt, ohne Exception ohne alles! EDIT: auch ohne CodeGuard kompiliert



  • Hallo

    Mach doch einmal ein Minimal-(Konsolen-)Programm mit nur diesen Programmzeilen. Ich bin mir sicher du wirst sehen das std::fstream fehlerfrei ist, und das der Fehler eher an undefiniertem Verhalten deines Codes liegt.

    bis bald
    akari



  • Ja, das funktioniert, werde ich also mein Code nochmal anschauen!
    Aber kommt das öfters vor, dass der BCB ohne CodeGuard und ohne Exception in den Vordergrund kommt (und praktisch im Debug-Modus läuft (ohne von mir gesetztem Breakpoint))
    Also bei mir kam das zum 1. Mal vor, aber ich bin ja auch noch ein Newbie



  • Jetzt funktioniert's!!!
    Alles was ich geändert habe, war in den Projektobtionen unter Linker->Linken, habe ich "Dynamische RTL" deaktiviert
    Ansonsten nichts!

    Trotzdem danke an Braunstein und Akari


Anmelden zum Antworten