sssssrichter
Grünschnabel
Hi,
Ich habe hier ein Phaenomaen, was ich nicht versteh.
Nachfolgender Code mit VC++ compiliert fuehrt dazu, dass sich ein
DateiAuswahl Dialog oeffnet, ich eine auswaehl, und der dazugehoerige
Pfad in eine Datei geschrieben wird, welche ich jedes Mal neu erstell.
Funktioniert beim ersten Mal wunderbar. Klicke ich aber ein zweites
Mal auf den Button, dann wird der neue Pfad nicht in die Datei
geschrieben, sondern wieder der alte.
Starte ich das Programm neu, dann funktioniert es wieder beim ersten
Mal und beim 2. Mal nicht.
betreffender Codeausschnitt:
void CKassensetupDlg::OnPfad()
{
CString strPfad;
CStdioFile filConfig;
CFileDialog dlg(true);
filConfig.Open("kassen.conf",CFile::modeCreate | CFile::modeWrite);
if(dlg.DoModal() == IDOK)
{
filConfig.WriteString("[Miktex Pfad]\n");
strPfad = dlg.GetPathName();
strPfad.Replace("\\","\\\\");
strPfad += "\n";
filConfig.WriteString(strPfad);
// Aus Testzwecken, nicht zwingend notwendig
filConfig.Flush();
// Zur Ueberpruefung des zu schreibenden Strings [1]
MessageBox(strPfad);
}
filConfig.Close();
}
----
Code Ende
[1] Interessanterweise steht in dem String, welchen ich mir mittels
einer Messagebox anzeigen lasse, der richtige Pfad, auch beim 2. Mal.
Ich hab ueberhaupt keine Ahnung woran das liegt, und schon viel
ausprobiert, komm aber auf keine Loesung.
MfG
Sven Richter
Ich habe hier ein Phaenomaen, was ich nicht versteh.
Nachfolgender Code mit VC++ compiliert fuehrt dazu, dass sich ein
DateiAuswahl Dialog oeffnet, ich eine auswaehl, und der dazugehoerige
Pfad in eine Datei geschrieben wird, welche ich jedes Mal neu erstell.
Funktioniert beim ersten Mal wunderbar. Klicke ich aber ein zweites
Mal auf den Button, dann wird der neue Pfad nicht in die Datei
geschrieben, sondern wieder der alte.
Starte ich das Programm neu, dann funktioniert es wieder beim ersten
Mal und beim 2. Mal nicht.
betreffender Codeausschnitt:
void CKassensetupDlg::OnPfad()
{
CString strPfad;
CStdioFile filConfig;
CFileDialog dlg(true);
filConfig.Open("kassen.conf",CFile::modeCreate | CFile::modeWrite);
if(dlg.DoModal() == IDOK)
{
filConfig.WriteString("[Miktex Pfad]\n");
strPfad = dlg.GetPathName();
strPfad.Replace("\\","\\\\");
strPfad += "\n";
filConfig.WriteString(strPfad);
// Aus Testzwecken, nicht zwingend notwendig
filConfig.Flush();
// Zur Ueberpruefung des zu schreibenden Strings [1]
MessageBox(strPfad);
}
filConfig.Close();
}
----
Code Ende
[1] Interessanterweise steht in dem String, welchen ich mir mittels
einer Messagebox anzeigen lasse, der richtige Pfad, auch beim 2. Mal.
Ich hab ueberhaupt keine Ahnung woran das liegt, und schon viel
ausprobiert, komm aber auf keine Loesung.
MfG
Sven Richter