E
Ich verstehe nicht, warum ich, wenn ich in der for()-Schleife versuche pOrdner in einen CString zu laden, ich wieder nur den ersten Wert bekomme... Meine jetzige Funktion schreibt 3x den gleichen Ordner in das List Control...
void CMyToolDlg::IniServerVersionenInListe(void)
{
[...]
char cVersionsOrdner[500];
GetPrivateProfileSection("ServerVersionen",
cVersionsOrdner,
sizeof(cVersionsOrdner),
strDirectory + "\\" + "ServerVersionen.ini");
CString strVersionsOrdner;
CStringArray arr;
for (char *pOrdner = cVersionsOrdner; // erst mal auf den ersten Text zeigen
*pOrdner != 0; // Leerstring = Ende
pOrdner += (lstrlen(pOrdner) + 1)) // um Stringlänge weitersetzen
{
strVersionsOrdner = pOrdner;
int old = 0, pos = 0;
while(-1 != (pos = strVersionsOrdner.Find('=', pos)))
{
arr.Add(strVersionsOrdner.Mid(old, pos - old));
old = ++pos;
} // while
if(old < strVersionsOrdner.GetLength())
{
arr.Add(strVersionsOrdner.Mid(old, strVersionsOrdner.GetLength() - old));
} // if
int nItem = m_ctlVersionen.GetItemCount();
m_ctlVersionen.InsertItem(nItem, arr[0], 0);
m_ctlVersionen.SetItemText(nItem, 1, arr[1]);
} // for
} // Funktion
Kann mir bitte jemand helfen?