Quantcast
Channel: VFPX
Viewing all articles
Browse latest Browse all 3798

Updated Wiki: FoxBin2prg

$
0
0

38209 FoxBin2Prg (Ver ayuda en Español)

38236
vfpxreleasesmall.pngLatest Release of FoxBin2prg

Creator and Project Manager: Fernando D. Bozzo

Demo video:

See YouTube demo video of FoxBin2Prg used with PlasticSCM

What is FoxBin2Prg and how to use it?

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 (seen differences) and Merge operations, that pretends to substitute SccText(X) and TwoFox and enhance their functionality, generating bidirectional PRG-Style 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
  • 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 the vbs scripts attached, and make on-the-fly conversions
  • Modify TX2 Prg-Style versions with MODIFY COMMAND (without compile) to see coloured syntax, or even use the Document View to navigate the procedures
  • Get back your SourceSafe projects (.pjx) from their .pjm files


Actually 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, and can be reconfigured to compatibilize with SCCAPI (just tested with SourceSafe).

scctextx-vs-FoxBin2Prg_scx_EN.png


scctextx-vs-FoxBin2Prg_mnx_EN.png


Use

FoxBin2Prg can be used in two ways:

EXE version:
Have almost all inside, you just want foxbin2prg.exe, foxbin2prg.cfg, filename_caps.exe and filename_caps.cfg.

PRG version:
You need various files: foxbin2prg.prg, all the props*.txt files, foxbin2prg.cfg, filename_caps.exe, filename_caps.cfg.

Note: All mentioned files need to be in the same folder. You can't use just the PRG without the rest of the mentioned files.

To use FoxBin2Prg from the File Explorer, you can create 3 shortcuts of FoxBin2Prg.exe and move them to "SendTo" folder on your Windows profile, so you can "send" the selected file (pjx,pj2,etc) to the selected option, and make on-the-fly conversions, then rename and edit those shortcuts as this (make sure you can see system file extensions):

Name------------------------  Right-click/Properties/destination-----------
FoxBin2Prg - Binary2Text.lnk  <path>\foxbin2prg.exe "BIN2PRG-SHOWMSG"
FoxBin2Prg - Text2Binary.lnk  <path>\foxbin2prg.exe "PRG2BIN-SHOWMSG"
FoxBin2Prg.lnk                <path>\foxbin2prg.exe "INTERACTIVE-SHOWMSG"

  • With "BIN2PRG" or "PRG2BIN" options, you can process directories or individual files, but for the corresponding type of convertion
  • With just FoxBin2Prg.exe you can process directories or individual files for any type of convertion
  • With the "INTERACTIVE" option, a confirmation dialog will be shown when processing a directory with just FoxBin2Prg without BIN2PRG or PRG2BIN options, asking what to convert. This option actually make unnecesary the previous options for BIN2PRG and PRG2BIN
  • With the "SHOWMSG" option a ststus message will be shown on termination


Important note: When you process a directory, it is used as the base for the compilation of binaries, and because of this, never process more than one directory in the same process, because the compilation may not be ok. To process more than one directory (or project), just select and process each one independently, in parallel if you like, but in different processes



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
FOXBIN2PRG.EXE "<path>\proj.pjx" "*"	==> Regenerates the TEXT files for all the files in the PJX
FOXBIN2PRG.EXE "<path>\proj.pj2" "*"	==> Regenerates the BINARY files for all the files in the PJ2


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
DO FOXBIN2PRG.PRG WITH "<path>\proj.pjx", "*"	==> Regenerates the TEXT files for all the files in the PJX
DO FOXBIN2PRG.PRG WITH "<path>\proj.pj2", "*"	==> Regenerates the BINARY files for all the files in the PJ2


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) (@=by reference | v=by value), (IN/OUT)
c_InputFile(v! IN ) Fullpath of the file to convert
cType (v? IN ) For SCCTEXT.PRG compatibility, indicates the file type (d=DBC, D=DBF, K=Form, B=Label, M=Menu, R=Report, V=Class)
cTextName (v? IN ) For SCCTEXT.PRG compatibility, name of the Text version of the file
lGenText (v? IN ) For SCCTEXT.PRG compatibility, .T.=Generate Text, .F.=Generate Binary
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)
cRecompile (v? IN ) If a Path is provided, the binary is recompiled from it. If called from SCCAPI, it's True, else it's False
cNoTimestamps (v? IN )'1' for clearing Timestamps on text and binaries. Useful for minimizing differences on Diff and Merge operations ("1" is the default value starting from v1.19.9)


Note: Please read the README.txt and FoxBin2Prg.cfg files for more technical info.

Keep reading:

> FoxBin2Prg Internals and Configuration
> FoxBin2Prg and use with SCM tools
> FoxBin2Prg Full Change History


vfpxreleasesmall.pngLatest Release of FoxBin2prg

38236

Viewing all articles
Browse latest Browse all 3798

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>