Klotzkopp Geschrieben 23. November 2007 Teilen Geschrieben 23. November 2007 Reichst du möglicherweise in deinem Programm Zeiger herum, die aus nicht mehr existierenden CStrings geholt wurden? So etwas z.B.: LPCTSTR foo() { CString s; return s; // oder return s.GetString(); }[/code] Oder so etwas: [code]LPCTSTR x = CString( bar ).GetString(); Du musst darauf achten, dass du keine Zeiger über die Lebenszeit der zugehörigen CStrings hinaus verwendest. Und sehe ich das richtig, dass die Methoden der Klasse CLSDatabase mit Zeigern auf CStrings arbeiten? Ist das eine Eigenentwicklung? Allgemein scheinst du ziemlich leichtfertig mit Zeigern umzugehen. Da kann natürlich viel schief gehen, und es ist auch oft so, dass sich Fehler nicht immer oder nur in besonderen Situation bemerkbar machen. Dass dein Code also bis auf diese eine Format-Anweisung funktionert, bedeutet nicht, dass der übrige Code fehlerfrei ist. Meine Vermutung ist nach wie vor, dass du dir irgendwo in deinem Programm die Speicherverwaltung zerlegst. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Patrick.Karre Geschrieben 27. November 2007 Autor Teilen Geschrieben 27. November 2007 Du hattest recht, ich bin noch mal alles durchgegangen. Nachdem ich die Rückgaben der Unterfunktionen angepasst habe, geht alles. Vielen Dank. Patrick Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.