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 klarEr speichert auch den in meiner ini Datei kommt folgendes raus:
[HLPFAD]
Pfad=C:\bla\bla\blaSO 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.