Files
foxbin2prg/Documentacion/github/FoxBin2prg.md
Lutz f5a43c777e reworked
added fixes
added modifications
added documentation
for changes see README.md or foxbin2prg.prg

intended to be merged to https://github.com/fdbozzo/foxbin2prg/
2021-02-22 20:29:29 +01:00

4.2 KiB

Purpose of this document

This document is an attempt to recreate the original documentation of FoxBin2Prg out of CodePlex.
I found the documentation on foxbin2prg a bit brief. For a short what and why, see there.

The original document was created by Fernando D. Bozzo whom I like to thank for the great project. Pictures are taken from the original project.
As far as possible these are the original documents. Changes are added where functionality is changed.


VFPX logo
This project is part of VFPX.


FoxBin2Prg - a Binary to Text converter for MS Visual Foxpro 9, SP1

Source

Original repository at https://github.com/fdbozzo/foxbin2prg, this is a fork available on https://github.com/lscheffler/foxbin2prg/tree/fork

Requirements

  • A copy of MS VFP9 SP1, at least 3504
  • Runs with VFPA

Demo video

See YouTube demo video of FoxBin2Prg used with PlasticSCM

What is FoxBin2Prg

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

Advantages:

  • It generates Text style programs (not compilable), for visual comparison out of FoxPros table based code.
  • It enables the change of the Text version as easy as modifying a PRG
  • All the program code is in just one PRG, to simplify its maintainability
  • Out of the Text versions you can regenerate the original binaries, 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 version are alphabetically sorted for easy comparison
  • Can set UseClassPerFile setting to create individual files by class
  • Can set UseFilesPerDBC setting to create individual files by DBC member
  • Takes advantage of the API using foxbin2prg as an object
  • It has compatibility with SccText/X at parameter level so can be used as substitute with 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
  • Modify the Text Prg-Style versions 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 files
  • Don't infest a text based system like git with binaries

Currently supports the conversion between PJX, SCX, VCX, FRX, LBX, DBC, DBF and MNX files, for which a Text version is generated with pj2, sc2, vc2, fr2, lb2, dc2, db2 and mn2 extensions. The extensions may be reconfigured to be compatible with SCCAPI (just tested with SourceSafe).

Example

FoxBin2prg_scctextx-vs-FoxBin2Prg_scx_EN.png
FoxBin2prg_scctextx-vs-FoxBin2Prg_mnx_EN.png

Usage

FoxBin2Prg can be used in tree ways:

  1. EXE version: (Recommended and fastest)
    • All-inclusive, you just need foxbin2prg.exe and filename_caps.exe/cfg.
    • Runs from windows
  2. PRG version:
    • You need various files: foxbin2prg.prg, all the props*.txt files and filename_caps.exe/cfg.
    • Runs out of VFP IDE, no problems mixing VFP 9 and VFPA
  3. Object version:
    • Usable out of own code
    • expandable

Keep reading:


Last changed: Pungenday, 53 Chaos 3187 Picture