FOXBIN2PRG
Project Manager: Fernando D. Bozzo
Bidirectional conversion of Visual FoxPro 9.0 binary files to replace SCCText.
What is it and how to use it?
It is a program intended to be used with SCM tools (Source Code Managers) for Diff and Merge operations, that pretends to sustitute SCCTEXT and enhance it, generating bidirectional TEXT versions that permits to recreate the original binary file.
Advantages:
- It generates "PRG" style programas (no compilables), for visual comparison
- It enables the the change of the TEXT version as easy as modifying a PRG
- All the program code is in just one PRG, to simplify its copy and maintainability
- With TEXT versions you can regenerate the original binaries, so it is useful as backup
- The extensions are configurable if you create the FOXBIN2PRG.CFG file
- Methods and properties of TEXT version are alphabetically sorted for easy comparison
- It has compatibility with SCCTEXT at parameter level so can be used as sustitute with SourceSafe
Actually supports conversions between PJX,SCX,VCX,FRX,LBX,DBC and DBF files, for which it generates
TEXT versions with extension PJ2,SC2,VC2,FR2,LB2,DC2 and DB2 that can be reconfigured to compatibilize
with SourceSafe.
Example of FOXBIN2PRG.CFG configuration file if need to change extensions
extension: SC2=SCA extension: VC2=VCA extension: PJ2=PJA ...
Using the "EXE" version: (useful for calling from 3rd.party programs)
FOXBIN2PRG.EXE "<path>\file.scx" ==> Generates the TEXT version sc2 extension FOXBIN2PRG.EXE "<path>\file.sc2" ==> Regenerates the binary version with scx extension
Using the "PRG" version:
DO FOXBIN2PRG.PRG WITH "<path>\file.scx" ==> Generates the TEXT version sc2 extension DO FOXBIN2PRG.PRG WITH "<path>\file.sc2" ==> Regenerates the binary version with scx extension
Using the "Object" version:
LOCAL loCnv AS c_foxbin2prg OF "FOXBIN2PRG.PRG" loCnv = NEWOBJECT("c_foxbin2prg", "FOXBIN2PRG.PRG") loCnv.Ejecutar( <params> )
Where <params> are: | (!=Required | ?=Optional) (@=Pass by reference | v=Pass by value), (IN/OUT) |
---|---|
c_InputFile | (v! IN ) Fullpath of the file to convert |
cType_na | ( ) Just for SCCTEXT.PRG compatibility, not used for now |
cTextName_na | ( ) Just for SCCTEXT.PRG compatibility, not used for now |
lGenText_na | ( ) Just for SCCTEXT.PRG compatibility, not used for now |
cDontShowErrors | (v? IN )'1' for NOT showing errors with MESSAGEBOX |
cDebug | (v? IN )'1' for debugging on the error point (just development mode) |
cDontShowProgress | (v? IN )'1' for NOT showing the progress bar |
cOriginalFileName | (v? IN ) For cases when inputFile is a temp name and you want the correct original name (for example: inside PJ2 files and headers) |
Useful trick:
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.