Announcement

Collapse
No announcement yet.

MySql-C++ Projekt stürzt mit "Heap Corruption" ab

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MySql-C++ Projekt stürzt mit "Heap Corruption" ab

    Hi,
    ich hab ein VS 2005 Konsolenprojekt in C++ bei dem ich MySql verwende.
    Die Verbindung mit der Datenbank scheint auch tadellos zu funktionieren.

    Wenn ich allerdings eine Abfrage starte und anschließend versuche die Ergebnisse aus dem ResultSet auszulesen bricht das Programm mit folgender Meldung ab:

    Windows has triggered a breakpoint in sqltest.exe.

    This may be due to a corruption of the heap, and indicates a bug in sqltest.exe or any of the DLLs it has loaded.
    Der Teilquellcode in dem der Fehler erfolgt sieht so aus:

    PHP Code:
    sql::ResultSet *res;
    std::string text;
        
    //Query ausführen - stmt, con, und driver sind gültig!
    res stmt->executeQuery("SELECT sk FROM accounts WHERE id LIKE 28");

    res->next();
    printf(  (res->getString("sk")).c_str()  );  //Fehlerstelle 

    Das Problem scheint der Aufruf von res->getString("sk") zu sein.

    Interessant ist das der Text sogar noch ausgegeben wird, weil ich ihn in der Konsole lesen kann. Er gibt mir sogar dieZeichenkette aus der Datenbank zurück, die Abfrage funktioniert also auf jeden Fall.

    Scheint auch kein Bufferoverflow zu sein, weil das Problem auch auftritt wenn ich nur res->getString("sk"); aufrufe.

    Ich bin echt ratlos..

    /edit: Lieg ich jetz hier richtig oder gehört das in C++ Datenbanken? Weiß ja nicht genau wo das Problem liegt..
    Was vielleicht noch wichtig ist: ich verwende den mysql c++ connector, die dynamische lib.
    Zuletzt editiert von Lemontee; 21.10.2009, 20:41.

  • #2
    Ok, das hat mich nen ganzen Tag gekostet.
    Jetzt hab ich die Dll Datei nochmal runtergeladen und auf einmal funktionierts. Frag mich echt was da schief gegangen ist.. oO

    Thema kann geschlossen werden.

    Comment

    Working...
    X