• Sábado 14 de Diciembre de 2024, 22:37

Autor Tema:  Me Ayudan A Encontrar El Error En Este Programa..  (Leído 1187 veces)

eneas_arg

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Me Ayudan A Encontrar El Error En Este Programa..
« en: Jueves 26 de Abril de 2007, 19:04 »
0
Hola.. quiero hacer un programa que cree un archivo de texto con una lista de todas las carpetas y archivos de un cd, ésta es la parte del código que se encarga de eso:

Código: Text
  1.  
  2. int i, j;
  3. AnsiString n;
  4. FILE *lista;
  5.  
  6. lista = fopen("C:\\lista.txt", "w");
  7. if (!lista)
  8. {
  9.   ShowMessage("Error al crear el archivo nuevo");
  10.   exit (0);
  11. }
  12.  
  13.  
  14. for (j=0; j<DirectoryListBox1->Items->Count; j++)
  15. {
  16.   FileListBox1->Directory = DirectoryListBox1->Items->Strings[j];
  17.   FileListBox1->Update();
  18.   fprintf(lista, "[%s]", DirectoryListBox1->Items->Strings[j]);
  19.   fprintf(lista, "\n");
  20.   for (i=0; i<FileListBox1->Items->Count; i++)
  21.      fprintf(lista, "%s%c", FileListBox1->Items->Strings[i], '\n');
  22.   fprintf(lista, "\n\n");
  23. }
  24. fclose(lista);
  25. ShellExecute(NULL, "open", "C:\\lista.txt",NULL, NULL,SW_SHOWNORMAL);
  26.  
  27.  

Pero por algún motivo crea bien la lista de carpetas, pero en cada carpeta muestra siempre la lista de archivos de la primera, osea
[Carpeta1]
Archivos de la carpeta 1..
Archivos de la carpeta 1..
Archivos de la carpeta 1..
[Carpeta2]
Archivos de la carpeta 1..
Archivos de la carpeta 1..
Archivos de la carpeta 1..
[Carpeta3]
Archivos de la carpeta 1..
Archivos de la carpeta 1..
Archivos de la carpeta 1..

y así.. y por más que busco en el código no encuentro por qué no funciona, a ver si alguien que sepa más que yo sobre el tema me puede ayudar..
Desde ya gracias..

Max_D

  • Miembro MUY activo
  • ***
  • Mensajes: 117
    • Ver Perfil
    • http://sitioteca.spaces.live.com/
Re: Me Ayudan A Encontrar El Error En Este Programa..
« Respuesta #1 en: Martes 1 de Mayo de 2007, 15:49 »
0
Es un error logico, no busques un error sintactico:

Código: Text
  1. FileListBox1->Directory = DirectoryListBox1->Items->Strings[j];
  2.  


Creo que en esa instruccion esta el problema.