Visual FoxPro 9 Binary to Text and Text to Binary converter. Replacement for SCCText(X) and TwoFox that is bi-directional (Text is editable)
xBase SQLPL Visual Basic HTML PowerShell NSIS
Switch branches/tags
Clone or download
fdbozzo
fdbozzo Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th…
…at some objects be created in erroneous order, causing unexpected behavior (Jochen Kauz) [#28]

NOTE: This Bug Fix implies that when tx2 files are regenerated, differences will occur almost certainly for the first time, so do not regenerate all tx2 files unnecesarily to keep differences at minimum.
Latest commit 9e5ce43 Jul 31, 2018
Permalink
Failed to load latest commit information.
CONFIG Added codepage=1252 in internal FoxBin2Prg.exe's config.fpw (in \conf… Mar 15, 2018
Documentacion Preview 5: Feb 6, 2016
FileName_Caps Nivelacion con 1.19.49.4 Dec 4, 2017
TESTS Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 31, 2018
ThorUpdater Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 31, 2018
WinMergePortable Added WinMerge Visual FoxPro 9 FoxBin2Prg files filter Feb 3, 2018
Convert_VFP9_BIN_2_PRG.vbs BugFix: Added variable declaration (DH) May 24, 2016
Convert_VFP9_PRG_2_BIN.vbs BugFix: Added variable declaration (DH) May 24, 2016
FoxBin2PRGVersionFile.txt Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 31, 2018
LICENSE Create LICENSE Dec 3, 2017
Normalize_FileNames.vbs Replace Scripting.FileSystemObject MoveFile with Win32API equivalent Feb 18, 2017
README.md Update PayPal image + link May 1, 2018
VFP9RENU.dll - Agregado de los runtimes VFP9 Feb 6, 2016
VFP9_FoxBin2Prg.vbs - Renombrado de archivos en el proyecto y en scripts Apr 15, 2015
change_file_type.bat Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
clean_copied_memo.prg Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
config.fpw Added codepage=1252 in internal FoxBin2Prg.exe's config.fpw (in \conf… Mar 15, 2018
fb2p_diff.cfg Added missing fb2p_diff.cfg file Mar 14, 2018
fb2p_diff.exe Bug Fix VCX: When using ClassPerFile in API Mode and importing single… Dec 4, 2017
fb2p_diff.ico Programa para permitir comparar binarios directamente, usando la herr… Jul 27, 2015
fb2p_diff.pj2 Bug Fix VCX: When using ClassPerFile in API Mode and importing single… Dec 4, 2017
fb2p_diff.pjt Nivelacion con 1.19.49.4 Dec 4, 2017
fb2p_diff.pjx Nivelacion con 1.19.49.4 Dec 4, 2017
fb2p_diff.sc2 v1.19.46 - Preview-4 Sep 4, 2015
fb2p_diff.sct v1.19.46 - Preview-4 Sep 4, 2015
fb2p_diff.scx v1.19.46 - Preview-4 Sep 4, 2015
filename_caps.cfg Changeset: 254 fdbozzo - 17/05/2014 19:19:15: May 17, 2014
filename_caps.exe filename_caps.exe: Agregado reintento de renombrado para intentar pre… Feb 19, 2017
filetypes.conf - filetypes.conf: Agregada extensión vbs como tipo texto Mar 9, 2015
foxbin2prg.cfg.txt Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 31, 2018
foxbin2prg.exe Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 13, 2018
foxbin2prg.ico - New default FoxBin2Prg App icon and background image, configurable … Mar 22, 2015
foxbin2prg.jpg - New default FoxBin2Prg App icon and background image, configurable … Mar 22, 2015
foxbin2prg.pj2 v1.19.51 EXE generation Mar 25, 2018
foxbin2prg.pjt - Bug Fix: If capitalization is used on a DBC view info, then related… May 12, 2018
foxbin2prg.pjx - Bug Fix: If capitalization is used on a DBC view info, then related… May 12, 2018
foxbin2prg.prg Bug Fix: The alphabetic ordering of ADD OBJECT's objects can cause th… Jul 13, 2018
foxbin2prg_keywords.cdx - Cambio del mecanismo de evaluación de propiedades de ASCAN(array) a… Apr 3, 2015
foxbin2prg_keywords.dbf - Cambio del mecanismo de evaluación de propiedades de ASCAN(array) a… Apr 3, 2015
getrevisions.prg Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
ignore.conf Added ThorUpdater folder and files Dec 3, 2017
main_fb2p_diff.prg v1.19.46 - Preview-4 Sep 4, 2015
preparar_SpecialProps_desde_Lista.prg Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_all.txt - Bug Fix: Cuando un form tiene AutoCenter, hay veces en que al regen… May 10, 2015
props_checkbox.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_collection.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_combobox.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_commandbutton.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_commandgroup.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_container.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_control.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_cursor.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_cursoradapter.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_dataenvironment.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_editbox.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_form.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_formset.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_grid.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_grid_column.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_grid_header.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_hyperlink.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_image.txt Changeset: 278 fdbozzo - 05/06/2014 23:04:19: Jun 5, 2014
props_label.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_line.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_listbox.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_olebound.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_optiongroup.txt Changeset: 285 fdbozzo - 07/06/2014 00:52:47: Jun 6, 2014
props_optiongroup_option.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_pageframe.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_pageframe_page.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_pre_v1_19_22.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_projecthook.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_relation.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_reportlistener.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_separator.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_shape.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_spinner.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_textbox.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_timer.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_toolbar.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_xmladapter.txt Changeset: 240 fdbozzo - 14/05/2014 00:51:06: May 14, 2014
props_xmlfield.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
props_xmltable.txt Changeset: 237 fdbozzo - 07/05/2014 20:47:21: May 13, 2014
vfp9r.dll - Agregado de los runtimes VFP9 Feb 6, 2016

README.md

FoxBin2Prg v1.19.xx - Binary/Text Conversor for Microsoft Visual FoxPro 9

Fernando D. Bozzo

ENGLISH/ESPAÑOL

ENGLISH

What is FOXBIN2PRG?

It is a program intended to be used with SCM tools (Source Code Managers, like VSS, CVS, SVN) and DVCS tools (Version Control Systems such as Git, Mercurial, Plastic, and others), or as standalone program for Diff (viewing differences) and Merge operations. Foxbin2prg can substitute for SccText/X, TwoFox and others, and enhance their functionality, generating bidirectional PRG-Style versions of Foxpro binary files that allow recreating the original binary file.

Advantages:

  • It generates "PRG" style text files from Foxpro binary files for use in SCM and VCS systems and for visual comparison.

    (it's not really a prg, and can not be compiled, but it reads like one to Foxpro developers.)

  • It enables the change of the Text version as easy as modifying a PRG.

  • All the program code for any binary file (a form, a report, a class) is in just one text file, to simplify its maintainability.

  • You can regenerate the original binaries from the text files, so it is useful as backup

  • The extensions are configurable if you create a FOXBIN2PRG.CFG file

  • Inheritance of CFG configuration files between directories

  • Methods and properties of Text versions are alphabetically sorted for easy comparison

  • You can set the "UseClassPerFile" setting to create individual files by class or DBC member.

    (Which violates number three above, but it may be what you want.)

  • Takes advantage of the Win32 API using foxbin2prg as an object

  • It has compatibility with SccText/X at the parameter level so that it can be used as substitute for SccText with SourceSafe. (Not that we recommend SourceSafe.)

  • Productivity: You can create a shortcut in the "SendTo" folder on your user Windows Profile, so you can "send" the selected file (pjx,pj2,etc) to Foxbin2prg.exe and make on-the-fly conversions

  • You can modify the TX2 Prg-Style versions of your objects with MODIFY COMMAND (without compile) to see colored syntax, or even use the Document View to navigate the procedures

  • Get back your SourceSafe projects (.pjx) from their .pjm file

The program supports conversions between PJX,SCX,VCX,FRX,LBX,DBC,DBF and MNX files, for which it generates TEXT versions with extension PJ2,SC2,VC2,FR2,LB2,DC2,DB2 and MN2. If you want, the created text file extensions can be reconfigured to be compatibilize with SourceSafe.

Here is an example of a FOXBIN2PRG.CFG configuration file if you need to change extensions for using it with a specific VSS (SourceSafe)

extension: SC2=SCA
extension: VC2=VCA
extension: PJ2=PJA
extension: MN2=MNA
extension: FR2=FRA
extension: LB2=LBA
extension: DB2=DBA
extension: DC2=DCA

USE:

DO FOXBIN2PRG.PRG WITH "<path>\archivo.scx"		==> Generates the TEXT version sc2 extension
DO FOXBIN2PRG.PRG WITH "<path>\archivo.sc2"		==> Regenerates the binary version with scx extension

USEFUL SETUP:

You can create up to three different shortcuts pointing to FoxBin2Prg.exe and in your "SendTo" folder in your Windows profile. This allows you to "send" a selected file (pjx,pj2,etc) to the selected option, and make on-the-fly conversions. (Make sure you have the option for seeing known file extensions turned on!):

Shortcut Name Right-click/Properties/destination What you can do with this option
FoxBin2Prg - Binary2Text.lnk \foxbin2prg.exe "BIN2PRG-SHOWMSG" Process directories or individual files
FoxBin2Prg - Text2Binary.lnk \foxbin2prg.exe "PRG2BIN-SHOWMSG" Process directories or individual files
FoxBin2Prg.lnk \foxbin2prg.exe "INTERACTIVE-SHOWMSG" Process individual files or directories asking what to convert

How to use them: Select a file, right-click, SendTo -> FoxBin2Prg

LOCALIZATION:

Is automatic starting at v1.19.38 (Languages: EN,ES,FR,DE)

FINAL NOTE:

This program is Open Source and "libre", and I don't make any guaranties that it fulfills your expectations or that it will be free of bugs. I will try to fix bugs if my obligations let me do it.

Project info and updates:

Fernando D. Bozzo's repository at Github: https://github.com/fdbozzo/foxbin2prg

LICENCE:

This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/.

ESPAÑOL


¿Que es FOXBIN2PRG?

Es un programa pensado para ser utilizado con herramientas SCM (Administradores de Control de Código Fuente, como VSS, CVS, SVN) y herramientas DVCS (como Git, Mercurial, Plastic, and others), o como programa independiente, para hacer operaciones de Diff (ver diferencias) y Merge (mezclar cambios), que pretende sustituir a SccText/X y TwoFox y mejorar sus funcionalidades, generando versiones de texto estilo-PRG que permiten recrear el binario original.

Ventajas:

  • Genera archivos estilo "PRG" (no compilables), para comparación visual
  • Permite hacer cambios en la versión Texto tan fácil como modificar PRG
  • Todo el código de programa está en un solo PRG, para simplificar su mantenimiento
  • Con las versiones Texto puedes regenerar los binarios originales, así que es útil como backup
  • Las extensiones usadas son configurables si se crea el archivo FOXBIN2PRG.CFG
  • Los métodos y propiedades de la versión Texto son ordenados alfabéticamente para acilitar su comparación
  • Puede usar el seteo "UseClassPerFile" para crear archivos individuales por clase o miembro de DBC
  • Aproveche la API usando foxbin2prg como un objeto
  • Tiene compatibilidad con el SccText/X a nivel de parámetros, así puede ser usado como sustituto con SourceSafe
  • Productividad: Puedes crear un acceso directo en la carpeta "SendTo" de tu Perfil de Windows, así puedes "enviar" el archivo seleccionado (pjx,pj2,etc) a Foxbin2prg.exe y a los scripts vbs incluidos, y hacer conversiones al vuelo
  • Modifique los archivos TX2 estilo-prg con MODIFY COMMAND (sin compilar) para ver la sintaxis coloreada, o incluso usar el Document View para navegar los procedimientos
  • Recupere sus proyectos SourceSafe (.pjx) desde sus archivos .pjm

Actualmente soporta las conversiones de archivos PJX,SCX,VCX,FRX,LBX,DBC,DBF y MNX para los que genera las versiones TEXTO con extensión PJ2,SC2,VC2,FR2,LB2,DC2,DB2 y MN2, que pueden reconfigurarse para compatibilizar con SourceSafe.

Ejemplo del archivo de configuración FOXBIN2PRG.CFG si se necesitan cambiar las extensiones para VSS (SourceSafe)

extension: SC2=SCA
extension: VC2=VCA
extension: PJ2=PJA
extension: MN2=MNA
extension: FR2=FRA
extension: LB2=LBA
extension: DB2=DBA
extension: DC2=DCA

USO:

DO FOXBIN2PRG.PRG WITH "<ruta>\archivo.scx" ==> Genera la versión TEXTO con extensión sc2 
DO FOXBIN2PRG.PRG WITH "<ruta>\archivo.sc2" ==> Regenera la versión binaria con extensión scx 

CONFIGURACIÓN UTIL:

Se puede crear 3 accesos directos de FoxBin2Prg.exe y moverlos a la carpeta "SendTo" de su perfil de usuario Windows, para poder "enviar" el archivo elegido (pjx,pj2,etc) a la opción seleccionada, y así hacer conversiones al vuelo, luego puede renombrar y modificar esos accesos directos como sigue (asegúrese de que puede ver las extensiones del sistema):

Nombre Click-Derecho/Propiedades/destino Qué puede hacer con esta opción
FoxBin2Prg - Binary2Text.lnk \foxbin2prg.exe "BIN2PRG-SHOWMSG" Procesar directorios o archivos individuales
FoxBin2Prg - Text2Binary.lnk \foxbin2prg.exe "PRG2BIN-SHOWMSG" Procesar directorios o archivos individuales
FoxBin2Prg.lnk \foxbin2prg.exe "INTERACTIVE-SHOWMSG" Procesar archivos individuales o directorios preguntando qué convertir

Por ejemplo: Seleccionar un archivo, click-derecho, Enviar A -> FoxBin2Prg

LOCALIZACIÓN:

Es automática desde la v1.19.38 (Lenguajes: EN,ES,FR,DE)

NOTA FINAL:

Este programa es Open Source y "libre", y como tal no ofrezco garantías de que cumpla con sus espectativas o de que está libre de fallos, que intentaré solucionar si me reporta y mis obligaciones me lo permiten.

Información del proyecto y actualizaciones: https://vfpx.codeplex.com/wikipage?title=FoxBin2Prg

LICENCIA:

Esta obra está sujeta a la licencia Reconocimiento-CompartirIgual 4.0 Internacional de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-sa/4.0/deed.es_ES.