Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #10  
Antiguo 26-11-2009
yelian yelian is offline
No confirmado
 
Registrado: nov 2007
Ubicación: Cuba
Posts: 81
Poder: 0
yelian Va por buen camino
Thumbs up

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:eleteFolder(String Folder)
{
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.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
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


La franja horaria es GMT +2. Ahora son las 16:35:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi