Listbox Fehler
-
Ich habe eine Listbox die mit diesem Code laufen soll.
TSearchRec sr; ListBox1->Clear(); if (strcmp (sr.Name, ".") == 0) if (FindFirst("Mods\\*", faDirectory, sr) == 0) do ListBox1->Items->Add(sr.Name); while (FindNext(sr) == 0); FindClose(sr);Aber als Fehler kommt immer das:
[C++ Fehler] Unit1.cpp(46): E2034 Konvertierung von 'AnsiString' nach 'const char *' nicht möglich
[C++ Fehler] Unit1.cpp(46): E2342 Keine Übereinstimmung des Typs beim Parameter '__s1' ('const char *' erwartet, 'AnsiString' erhalten)
-
Hallo
Du must AnsiString in char * konvertieren, was die Fehlermeldung auch klar besagt :
[cpp] if (strcmp (sr.Name**.c_str()**, ".") == 0)[/cpp]/Edit : Außerdem
1. warum nicht gleichif (sr.Name == ".")2. warum vergleichst du den Namen im Suchergebnis, bevor du die Suche begonnen hast?
bis bald
akari
-
Danke, funktioniert jetzt:
TSearchRec sr; ListBox1->Clear(); if (FindFirst("Mods\\*", faDirectory, sr) == 0) if (strcmp (sr.Name.c_str(), ".") == 0) ShowMessage("Gefunden"); do ListBox1->Items->Add(sr.Name); while (FindNext(sr) == 0); FindClose(sr);