OnSaveDocument?



  • Habe da ein kleines Problem.
    Und zwar habe ich in meinem SDI Project meine eigene OnSaveDocument geschrieben um .ini Dateien zu schreiben.
    Dies macht er auch ohne Prob aber sobald
    die Zeile

    return CDocument::OnSaveDocument(lpszPathName);

    abgearbeitet wurde setzt er meine .ini Datei wieder auf 0KB, das heist sobald die return anweisung kommt überschreibt er mir meine .ini.

    Woran kann das liegen?
    Wie gesagt mit dem Debugger habe ich alles verfolgt und er schreibt auch die ini einträge aber nach der returnanweisung ist alles leer.

    M.f.G.



  • Liegt es so fern jeder Vorstellung, dass wenn die Zeile 'return CDocument::OnSaveDocument(lpszPathName);'
    den Fehler erzeugt, diese einfach wegzulassen 😕



  • Ich glaube schon da sie einen BOOL zurück liefert.

    BOOL CSParamDoc::OnSaveDocument(LPCTSTR lpszPathName)

    und wenn ich daraus einen void mache und die return anweisung weglasse spuckt er mir fehler aus.



  • Statt
    return CDocument::OnSaveDocument(lpszPathName);
    einfach
    return true;
    ?



  • Laut der schönen MSDN, ich nahm an, dass Du da mal reingeschaut hast (sorry, mein Fehler), sollte eine BOOL-Funktion names OnSaveDocument TRUE zurückgeben, wenn sie erfolgreich war.

    ersetze 'return CDocument::OnSaveDocument(lpszPathName);'
    mit
    'return TRUE;'

    wäre die Lösung gewesen



  • Ich danke dir vielmals.

    Jetzt funzt es.
    Aber warum funzt es nicht wenn die returnanweisung so bleibt wie sie ist.Sie wurde nunmal vom Assi so erzeugt und ich dachte das sie auch TRUE zurück geben mußte.
    hmm ist mir irgendwie nicht ganz klar.

    Aber trotzdem danke

    Ps:Ich habe in der MSDN nachgeschaut.
    Ich weiß das hier viel wert darauf gelegt wird aber habe das ganze irgendwie falsch verstanden

    Thx


Anmelden zum Antworten