From 208ec60fc3b9126f83a91495cbccfef716fb7f51 Mon Sep 17 00:00:00 2001 From: fdbozzo Date: Mon, 30 Mar 2015 01:32:24 +0200 Subject: [PATCH] =?UTF-8?q?-=20Agragada=20posibilidad=20de=20indicar=20PAT?= =?UTF-8?q?H=20relativo=20para=20la=20imagen=20del=20progressbar=20-=20Doc?= =?UTF-8?q?umentaci=C3=B3n=20de=20par=C3=A1metros=20-=20Encapsulaci=C3=B3n?= =?UTF-8?q?=20de=20obtenci=C3=B3n=20de=20ruta=20absoluta=20en=20nueva=20fu?= =?UTF-8?q?ncion=20get=5FAbsolutePath?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- foxbin2prg.exe | Bin 561102 -> 564149 bytes foxbin2prg.prg | 65 +++++++++++++++++++++++++++++++++++++------------ 2 files changed, 49 insertions(+), 16 deletions(-) diff --git a/foxbin2prg.exe b/foxbin2prg.exe index 0a5799f3d6b86b2972067a7616d51a7f974afb10..b5fcd20d4a956080af8206d5e5393145361df9ff 100644 GIT binary patch delta 22895 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 diff --git a/foxbin2prg.prg b/foxbin2prg.prg index f59d165..d7cbe36 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -734,7 +734,7 @@ DEFINE CLASS c_foxbin2prg AS SESSION LOCAL THIS AS c_foxbin2prg OF 'FOXBIN2PRG.PRG' #ENDIF - LOCAL lcSys16, lnPosProg, lc_Foxbin2prg_EXE, laValues(1,5) + LOCAL lcSys16, lnPosProg, lc_Foxbin2prg_EXE, laValues(1,5), lcPicturePath SET DELETED ON SET DATE YMD SET HOURS TO 24 @@ -770,10 +770,10 @@ DEFINE CLASS c_foxbin2prg AS SESSION lnPosProg = 1 ENDIF + THIS.c_CurDir = SYS(5) + CURDIR() && Directorio actual, que no necesariamente es donde está FoxBin2Prg THIS.c_Foxbin2prg_FullPath = SUBSTR( lcSys16, lnPosProg ) THIS.c_Foxbin2prg_ConfigFile = EVL( tcCFG_File, FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'CFG' ) ) - THIS.c_BackgroundImage = ADDBS(JUSTPATH(THIS.c_Foxbin2prg_FullPath)) + 'foxbin2prg.jpg' - THIS.c_CurDir = SYS(5) + CURDIR() + THIS.c_BackgroundImage = THIS.get_AbsolutePath( ADDBS(JUSTPATH(THIS.c_Foxbin2prg_FullPath)) + 'foxbin2prg.jpg' ) lc_Foxbin2prg_EXE = FORCEEXT( THIS.c_Foxbin2prg_FullPath, 'EXE' ) THIS.c_FB2PRG_EXE_Version = 'v' + IIF( AGETFILEVERSION( laValues, lc_Foxbin2prg_EXE ) = 0, TRANSFORM(THIS.n_FB2PRG_Version), laValues(4) ) ADDPROPERTY(_SCREEN, 'c_FB2PRG_EXE_Version', THIS.c_FB2PRG_EXE_Version) @@ -855,7 +855,12 @@ DEFINE CLASS c_foxbin2prg AS SESSION PROCEDURE wasProcessed + *--------------------------------------------------------------------------------------------------- + * PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT) + * tcFileMask (v! IN ) Fullpath del archivo del que se desea saber si se procesó + *--------------------------------------------------------------------------------------------------- LPARAMETERS tcFile + IF THIS.n_ProcessedFiles = 0 OR ASCAN( THIS.a_ProcessedFiles, tcFile, 1, 0, 1, 1+2+4 ) = 0 RETURN .F. ELSE @@ -906,6 +911,30 @@ DEFINE CLASS c_foxbin2prg AS SESSION ENDPROC + PROCEDURE get_AbsolutePath + LPARAMETERS tc_InputFile, tc_FullPath + + *-- Ajusto la ruta si no es absoluta + tc_InputFile = EVL(tc_InputFile,'') + tc_FullPath = EVL(tc_FullPath, THIS.c_Foxbin2prg_FullPath) + + IF NOT EMPTY( JUSTEXT(tc_FullPath) ) THEN + *-- Se indicó PATH+archivo.ext + tc_FullPath = JUSTPATH(tc_FullPath) + ENDIF + + tc_FullPath = ADDBS( tc_FullPath ) + + IF LEN(tc_InputFile) > 1 ; + AND LEFT(LTRIM(tc_InputFile),2) <> '\\' ; + AND SUBSTR(LTRIM(tc_InputFile),2,1) <> ':' THEN + tc_InputFile = FULLPATH(tc_InputFile, tc_FullPath) + ENDIF + + RETURN tc_InputFile + ENDPROC + + FUNCTION get_l_ConfigEvaluated RETURN THIS.l_ConfigEvaluated ENDFUNC @@ -917,6 +946,19 @@ DEFINE CLASS c_foxbin2prg AS SESSION FUNCTION get_Processed + *--------------------------------------------------------------------------------------------------- + * PARÁMETROS: (v=Pasar por valor | @=Pasar por referencia) (!=Obligatorio | ?=Opcional) (IN/OUT) + * taProcessed (@! OUT) Array donde se devolverá la información de los archivos de la máscara indicada + * tcFileMask (v? IN ) Máscara de archivo a buscar (nombre, "*", "?") + *--------------------------------------------------------------------------------------------------- + * ESTRUCTURA DEL ARRAY DEVUELTO: + * col(1) tcFile - Path del archivo (ej: 'C:\DESA\pruebas varias\lib.vcx') + * col(2) tcInOutType - Archivo de entrada o de salida ("I"=Input file, "O"=Output file) + * col(3) tcProcessed - Procesado ("P0"=Not Processed, "P1"=Processed) + * col(4) tcHasErrors - Tuvo Errores ("E0"=No Errors, "E1"=Has Errors) + * col(5) tcSupported - Archivo soportado ("S0"=Unsupported, "S1"=Supported) + * col(6) tcExpanded - Tipo de archivo ("X0"=Normal file, "X1"=Expanded multipart file) + *--------------------------------------------------------------------------------------------------- LPARAMETERS taProcessed, tcFileMask EXTERNAL ARRAY taProcessed @@ -1462,7 +1504,8 @@ DEFINE CLASS c_foxbin2prg AS SESSION PROCEDURE descargar_frm_avance - IF THIS.n_ShowProgressbar <> 0 AND VARTYPE(THIS.o_Frm_Avance) = "O" THEN + LPARAMETERS tlForceUnload + IF (tlForceUnload OR THIS.n_ShowProgressbar <> 0) AND VARTYPE(THIS.o_Frm_Avance) = "O" THEN THIS.o_Frm_Avance.Hide() THIS.o_Frm_Avance.Release() THIS.o_Frm_Avance = NULL @@ -2122,11 +2165,7 @@ DEFINE CLASS c_foxbin2prg AS SESSION ENDIF *-- Ajusto la ruta si no es absoluta - IF LEN(tc_InputFile) > 1 ; - AND LEFT(LTRIM(tc_InputFile),2) <> '\\' ; - AND SUBSTR(LTRIM(tc_InputFile),2,1) <> ':' THEN - tc_InputFile = FULLPATH(tc_InputFile, .c_CurDir) - ENDIF + tc_InputFile = .get_AbsolutePath( tc_InputFile, .c_CurDir ) *-- Determino el tipo de InputFile (Archivo o Directorio) IF EMPTY(lcInputFile_Type) AND NOT EMPTY(tc_InputFile) @@ -14760,13 +14799,7 @@ DEFINE CLASS c_conversor_dbc_a_prg AS c_conversor_bin_a_prg IF toDatabase._DBCEvents AND NOT EMPTY(toDatabase._DBCEventFilename) THEN *-- El archivo de eventos puede tener path relativo o absoluto *-- Ajusto la ruta si no es absoluta - IF LEN(toDatabase._DBCEventFilename) > 1 ; - AND LEFT(LTRIM(toDatabase._DBCEventFilename),2) <> '\\' ; - AND SUBSTR(LTRIM(toDatabase._DBCEventFilename),2,1) <> ':' THEN - lcEventsFile = ADDBS( JUSTPATH(.c_InputFile) ) + toDatabase._DBCEventFilename - ELSE - lcEventsFile = toDatabase._DBCEventFilename - ENDIF + lcEventsFile = toFoxBin2Prg.get_AbsolutePath( toDatabase._DBCEventFilename, .c_InputFile ) IF FILE(lcEventsFile) THEN lcEventsFile = '' ELSE