diff --git a/foxbin2prg.prg b/foxbin2prg.prg index acdc4c7..7f2bf1e 100644 --- a/foxbin2prg.prg +++ b/foxbin2prg.prg @@ -424,6 +424,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM + [] ; + [] ; + [] ; + + [] ; + [] ; + [] ; + [] ; @@ -458,6 +459,7 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM c_OutputFile = '' c_Type = '' lFileMode = .F. + n_ExisteCapitalizacion = -1 l_ConfigEvaluated = .F. l_Debug = .F. l_Test = .F. @@ -1480,15 +1482,29 @@ DEFINE CLASS c_foxbin2prg AS CUSTOM lcEXE_CAPS = FORCEPATH( 'filename_caps.exe', lcPath ) loFSO = .o_FSO - IF FILE(lcEXE_CAPS) - *.writeLog( '* Se ha encontrado el programa de capitalización de nombres [' + lcEXE_CAPS + ']' ) - .writeLog( TEXTMERGE(C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC) ) - ELSE - *-- No existe el programa de capitalización, así que no se capitalizan los nombres. - *.writeLog( '* No se ha encontrado el programa de capitalización de nombres [' + lcEXE_CAPS + ']' ) - .writeLog( TEXTMERGE(C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC) ) + DO CASE + CASE .n_ExisteCapitalizacion = -1 + *-- La primera vez vale -1, hace la verificación por única vez y cachea la respuesta + IF FILE(lcEXE_CAPS) + *.writeLog( '* Se ha encontrado el programa de capitalización de nombres [' + lcEXE_CAPS + ']' ) + .writeLog( TEXTMERGE(C_NAMES_CAPITALIZATION_PROGRAM_FOUND_LOC) ) + .n_ExisteCapitalizacion = 1 + ELSE + *-- No existe el programa de capitalización, así que no se capitalizan los nombres. + *.writeLog( '* No se ha encontrado el programa de capitalización de nombres [' + lcEXE_CAPS + ']' ) + .writeLog( TEXTMERGE(C_NAMES_CAPITALIZATION_PROGRAM_NOT_FOUND_LOC) ) + .n_ExisteCapitalizacion = 0 + EXIT + ENDIF + + CASE .n_ExisteCapitalizacion = 0 + *-- Segunda pasada en adelante: No hay programa de capitalización EXIT - ENDIF + + OTHERWISE + *-- Segunda pasada en adelante: Hay programa de capitalización + + ENDCASE .RenameFile( .c_OutputFile, lcEXE_CAPS, loFSO )