pfad in ini speichern klappt, aber auslesen tut er nicht?



  • Also ich hab ein Programm das einen Pfad in einer ini Datei speichret und zwar so:

    //Pfad eintragen////
    WritePrivateProfileString("HLPFAD","Pfad",m_strPfad,strPath);
    ///////
    

    (m_strPfad ist die Variable einer editbox in der der Pfad steht z.B. C:\bla\bla\bla
    strPath ist der pfad wo er sie speichern soll, ist ja klar

    Er speichert auch den in meiner ini Datei kommt folgendes raus:

    [HLPFAD]
    Pfad=C:\bla\bla\bla

    SO jetzt will ich das in einer anderen funktion einlesen, und das hab ich so gemacht:

    char Pfad[100];
    DWORD destSize;
    destSize=200;
    
    GetPrivateProfileString("HLPFAD","Pfad","NULL",Pfad,destSize,strPath);
    

    So in der Variable Pfad steht aber nicht der Pfad C:\bla\bla\bla sonder NULL

    Was amch ich falsch? ist es bei einem Pfad wegen den "\" ?
    Bitte helft mir
    thx bigmama



  • *schieb*

    Snooper



  • Bei mir klappts. Obwohl dein destSize doppelt so gross ist, wie es eigentlich sein sollte.
    Ich könnte mir folgendes vorstellen:
    strPath beinhaltet einen relativen Pfad, wie zb "myIni.ini". Du rufst WritePrivateProfileString auf, dann rufst du zb einen Datei Öffnen- oder Datei Speichern-Dialog auf, der das aktuelle Verzeichnis ändert und dann rufst du GetPrivateProfileString auf. Dann wird die ini nicht mehr gefunden.



  • Ich hab das Problem für Bigmama gelöst er hatte die funktion die das Verzeichnis ranholt in seiner Klasse vergessen.


Anmelden zum Antworten