44 lines
2.1 KiB
C++
44 lines
2.1 KiB
C++
#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
|
|
};
|