Ver Mensaje Individual
  #6  
Antiguo 06-12-2006
Avatar de aeff
aeff aeff is offline
Miembro
 
Registrado: oct 2006
Ubicación: Cuba, Guantánamo
Posts: 348
Reputación: 18
aeff Va camino a la fama
Talking respondiendo a última hora...

disculpa la demora, es que estaba de viaje... ahora es que venga a sentarme en la PC... y te voy a mandar la función de buscar los archivos implementada en C,

void SearchFiles(AnsiString Path, TStringList &vList, bool iFolders, bool all)
{
AnsiString p, fn;
int attr;
TSearchRec fs;
if (Trim(ExtractFileName(Path)) == "*.*") fn = "*.*"; else fn = Trim(ExtractFileName(Path));
p = ExtractFilePath(Path);
/*Buscamos los ficheros*/
attr = faArchive;
if (FindFirst(p + fn, attr, fs) == 0)
vList.Add(p + fs.Name);
while (FindNext(fs) == 0)
vList.Add(p + fs.Name);
/*Buscamos las carpetas, si se ha especificado*/
if (iFolders)
{
attr = faDirectory;
if (FindFirst(p + "\*..", attr, fs) == 0)
{
if (!all) vList.Add(p + fs.Name);
if ((fs.Name != ".") && (fs.Name != "..") && (all))
SearchFiles(p + fs.Name, vList, iFolders, all);
}
while (FindNext(fs) == 0)
{
if (!all) vList.Add(p + fs.Name);
if ((fs.Name != ".") && (fs.Name != "..") && (all))
SearchFiles(p + fs.Name + "\\" + fn, vList, iFolders, all);
}
}
FindClose(fs);
}

ahora, un ejemplo de llamada en un evento cualquiera:

TStringList *vLista = new TStringList();
SearchFiles("C:\\UsrMan\\*.*", *vLista, true, false);
Memo1->Text = vLista->Text;

espero que te sirva de algo aunque sea un poco demorada mi respuesta,

salu2!!!
Responder Con Cita