![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#10
|
|||
|
|||
![]() Muchas Gracias escafandra como siempre.
Bueno para el que a ya tenido el mismo problema que yo y no sepa como borrar todo los subdirectorios de una carpeta incluyendo los archivos, aqui les dejo el código que e utilizado para el mismo. Primero que nada debemos de declarar estas dos funciones. Codigo Funcion1 //-------------------------------------------------------- void __fastcall TForm1: ![]() { SHFILEOPSTRUCT FileOpInfo; setmem(&FileOpInfo, sizeof(FileOpInfo), 0); FileOpInfo.wFunc = FO_DELETE; FileOpInfo.pFrom = Folder.c_str(); FileOpInfo.fFlags = FOF_NOCONFIRMATION; SHFileOperation(&FileOpInfo); } //----------------------------------------------------- Codigo Funcion2 //-------------------------------------------------------- void __fastcall TForm1::ListarEliminarFolders(String Dir, TStrings* Salida) { TSearchRec sr; if(!FindFirst(Dir + "\\*.*", faAnyFile, sr)) do{ Salida->Add(Dir + "\\" + sr.Name); if (sr.Name=="." || sr.Name=="..") NULL; else DeleteFolder(Dir + "\\" + sr.Name); } while (!FindNext(sr)); FindClose(sr); } //--------------------------------------------------------- -En la primera Funcion es para eliminar la carpeta completa que se le pase, -En la Segunda Función es para listar todos los Archivos y Carpetas dentro de un directorio y Eliminarlos con la Primera Función Declarada, Le puse un IF para que cuando mande a borrar la lista de Archivos y Carpetas encontrados no me de Error a la hora de borrar estos dos "." y "..", que como escafandra me decía viene de la época del DOS. Bueno y Como ultimo como se Llama a la Función para eliminar todo el contenido dentro de una Carpeta dejándola a ella intacta. Código Acción //------------------------------------------------------ void __fastcall TForm1::Button1Click(TObject *Sender) { ListarEliminarFolders("C:\\Documents and Settings", Memo1->Lines); } Se inserta un Memo1 para ver todos los archivos con las carpeta que existian en el Directorio seleccionado "C:\Documents and Settings". Bueno cuando encuentre como pudiera ponerles mas carpetas a Excluir lo pasteo, para como ya dije le sirva a alguien que tenga la misma duda que yo, los archivos a Excluir deben de estar en un Fichero aparte... Bueno Saludos y Muchas gracias a todos. |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ayuda con onexion a sql server 2000 con ado por codigo desde delphi 6 | FAGD | Conexión con bases de datos | 2 | 26-02-2008 17:24:08 |
Porfavor algo de ayuda con un poco de codigo en delphi!! | N4ota | Varios | 6 | 10-06-2007 22:40:54 |
Ayuda para completar código:Traducción de Delphi a Builder | Pernorak | C++ Builder | 3 | 30-05-2007 12:45:16 |
Pasar codigo C a delphi | Mr.Vaka | Varios | 1 | 24-12-2005 11:38:02 |
Pasar Código VBSCRIPT a Delphi.net | mamen | .NET | 2 | 03-06-2005 14:52:43 |
![]() |
|