#pragma once #include "base_head.h" class C_error; class StrArray; class UTILES_EXPORT Cdir_manager//clase para manejar carpetas { public: //carpetas------------------------------------------------------- char dir_work[FILENAME_MAX]; char dir_exe[FILENAME_MAX]; char dir_log[FILENAME_MAX]; char dir_datos[FILENAME_MAX]; //archivos------------------------------------------------------- char path_conf[FILENAME_MAX]; //rutas de ejecucion--------------------------------------------- char dir_ejecucion[FILENAME_MAX]; char path_ejecutable[FILENAME_MAX]; //funciones------------------------------------------------------ Cdir_manager(void); ~Cdir_manager(void); //funciones------------------------------------------------------ void absoluta(char *ruta); void relativa(char *ruta); BOOL lee_reg(char* clave, C_error *er=NULL); BOOL rellena_dirs_ejecucion(); //funciones estaticas--------------------------------------- static char* dir_anterior(char*dir);//da el directorio anterior static char* nombre_archivo(char *path,char*nombre);//devuelve en nombre el nombre del archivo static char* extension_archivo(char *path);//te da la extension de un path o de un nombre de archivo static char* cambia_extension_archivo(char *path, char *pathDst, char *newext);//te da la extension de un path o de un nombre de archivo static BOOL crea_dir(char *path);//asegura que existe los directorios indicados static BOOL borra_archivos(char *paht, char *ext, BOOL recursivo = FALSE);//borra archivos de una extension dada, si ext es null borra todos //funciones de listado----------- static BOOL listar_elementos(char *dir,StrArray *files,StrArray *dirs,C_error *er=NULL);//dice los files y las dir dentro de un dir(no recursivo) static BOOL lista_files(char *dir,StrArray *files,BOOL recursivo=FALSE,C_error *er=NULL,char *omite=NULL); static BOOL listar( char* dir,StrArray *files,StrArray *dirs=NULL,BOOL recursivo=FALSE,C_error *er=NULL,char *omite=NULL );//funcion generica de listar //devuelve version de el archivo static char* getVersionFile(char *path, char *buf);//buffer de 64 sobra };