Updated to @lscheffler's fork

This commit is contained in:
Doug Hennig
2023-09-04 10:27:37 -05:00
parent 803ba987a2
commit 4c65ae479b
8 changed files with 260 additions and 249 deletions

View File

@@ -1,85 +1,87 @@
# How to contribute to FoxBin2Prg
## Bug report?
- Please check [issues](https://github.com/fdbozzo/foxbin2prg/issues) if the bug is reported
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
- Please add your current configuration creating a config file via `DO FOXBIN2PRG.PRG WITH '-C','path-to-source\FoxBin.cfg'`. **Do not include your normal config**
### Did you write a patch that fixes a bug?
- Open a new GitHub merge request with the patch.
- Ensure the PR description clearly describes the problem and solution.
- Include the relevant version number if applicable.
- See [New version](#new-version) for additional tasks
## Coding conventions
Start reading our code and you'll get the hang of it. We optimize for readability:
- Beautification is done like:
- Keywords: Mixed case
- Symbols: First occurence
- Indentation Tabs, 1
- Indent anything then Comments
- Please do not run BeautifyX with mDots insertion against the code.
- We ALWAYS put spaces after list items and method parameters (`[1, 2, 3]`, not `[1,2,3]`), around operators (`x = 1`, not `x=1`).
- This is open source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
- Please kindly add comments where and what you change
## New version
Please note, there are some tasks to set up a new version.
Stuff is a bit scattered, so this is where to look up.
1. Please create a fork at github
- See this [guide](https://www.dataschool.io/how-to-contribute-on-github/) for setting up and using a fork
- If allready forked, pull the recent state, or get most recent version otherwise.
0. On top of _FoxBin2Prg.prg_ there are two version numbers:
`#DEFINE DN_FB2PRG_VERSION 1.19`
`#DEFINE DC_FB2PRG_VERSION_REAL '1.19.60'`
1. Please set the **minor** part of _DC_FB2PRG_VERSION_REAL_ to a new number.
**Do not** alter the **1.19** part. This is written to the text files.
Alteration might force that the files must be newly commited, what is not everybodies taste.
3. Add a meaningfull description of the change in the changes list on top of _FoxBin2Prg.prg_.
The most recent entries for changes in the middle of this section around _* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>_,
The most recent bugs are listed above _* </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)>_
4. Alter version in _README.md_
4. Add a description to _docs\FoxBin2Prg_Changes.md_
6. Please alter the footer of *.md files touched to recent date.
4. If a change to the config files is made please add the description to the various properties (multi lang)
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_cfg:_ for general settings
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_tab_cfg:_ for settings per table
4. Create a template _foxbin2prg.cfg.txt_ for general settings or _foxbin2prg.dbf.cfg.txt_ for the settings per table.
- Do this even if no change to the setting to change the version number inside this files.
- Or change version number in those files manually
- **Note**. If you are not on an English comp, set the value _Language: EN_ in your local _foxbin2prg.cfg_ to create English files.
- run like:
```
CD Path_Top_Project
DO FoxBin2Prg.prg WITH "-c","foxbin2prg.cfg.txt"
DO FoxBin2Prg.prg WITH "-t","foxbin2prg.dbc.txt"
```
5. If a change to the parameters is made, change _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_ properties.
4. For changed functionality, add descriptive text on the appropriate _.md_ file in _docs_ folder.
2. Alter the version number for the EXE to the version used above.
0. Compile to EXE **in VFP9 SP2**
8. Change Thor ([see below](#thor-conventions))
8. commit
9. push to your fork
0. create a pull request
1.
## Thor conventions
This project is part of [VFPX](https://vfpx.github.io/) and published via [Thor](https://github.com/VFPX/Thor).
There are some considerations to make to add a new version to Thor.
Please check [Supporting Thor Updater](https://vfpx.github.io/thorupdate/)
In special:
- Update _Project.txt_, in special the version number
- and run the script included, or
- add files to _FoxBin2Prg.zip_, namely
- FoxBin2Prg.prg,
- FoxBin2Prg.exe,
- the config files templates
- Update the version number in _FoxBin2PrgVersion.txt_
Thanks
----
Last changed: _2023/03/20_ ![Picture](../docs/pictures/vfpxpoweredby_alternative.gif)
# How to contribute to FoxBin2Prg
## Bug report?
- Please check [issues](https://github.com/fdbozzo/foxbin2prg/issues) if the bug is reported
- If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
- Please add your current configuration creating a config file via `DO FOXBIN2PRG.PRG WITH '-C','path-to-source\FoxBin.cfg'`. **Do not include your normal config**
### Did you write a patch that fixes a bug?
- Open a new GitHub merge request with the patch.
- Ensure the PR description clearly describes the problem and solution.
- Include the relevant version number if applicable.
- See [New version](#new-version) for additional tasks
## Coding conventions
Start reading our code and you'll get the hang of it. We optimize for readability:
- Beautification is done like:
- Keywords: Mixed case
- Symbols: First occurence
- Indentation Tabs, 1
- Indent anything then Comments
- Please do not run BeautifyX with mDots insertion against the code.
- We ALWAYS put spaces after list items and method parameters (`[1, 2, 3]`, not `[1,2,3]`), around operators (`x = 1`, not `x=1`).
- This is open source software. Consider the people who will read your code, and make it look nice for them. It's sort of like driving a car: Perhaps you love doing donuts when you're alone, but with passengers the goal is to make the ride as smooth as possible.
- Please kindly add comments where and what you change
## New version
Please note, there are some tasks to set up a new version.
Stuff is a bit scattered, so this is where to look up.
1. Please create a fork at github
- See this [guide](https://www.dataschool.io/how-to-contribute-on-github/) for setting up and using a fork
- If allready forked, pull the recent state, or get most recent version otherwise.
0. On top of _FoxBin2Prg.prg_ there are two version numbers:
`#DEFINE DN_FB2PRG_VERSION 1.19`
`#DEFINE DC_FB2PRG_VERSION_REAL '1.19.60'`
1. Please set the **minor** part of _DC_FB2PRG_VERSION_REAL_ to a new number.
**Do not** alter the **1.19** part. This is written to the text files.
Alteration might force that the files must be newly commited, what is not everybodies taste.
3. Add a meaningful description of the change in the changes list on top of _FoxBin2Prg.prg_.
The most recent entries for changes in the middle of this section around _* </HISTORIAL DE CAMBIOS Y NOTAS IMPORTANTES>_,
The most recent bugs are listed above _* </TESTEO Y REPORTE DE BUGS (AGRADECIMIENTOS)>_
4. Alter version in _README.md_
4. Add a description to _docs\Change_Log.md_
6. Please alter the footer of *.md files touched to recent date.
4. If a change to the config files is made please add the description to the various properties (multi lang)
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_cfg:_ for general settings
- _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_tab_cfg:_ for settings per table
4. Create a template _foxbin2prg.cfg.txt_ for general settings or _foxbin2prg.dbf.cfg.txt_ for the settings per table.
- Do this even if no change to the setting to change the version number inside this files.
- Or change version number in those files manually
- **Note**. If you are not on an English comp, set the value _Language: EN_ in your local _foxbin2prg.cfg_ to create English files.
- run like:
```
CD Path_Top_Project
DO FoxBin2Prg.prg WITH "-c","foxbin2prg.cfg.txt"
DO FoxBin2Prg.prg WITH "-t","foxbin2prg.dbc.txt"
```
5. If a change to the parameters is made, change _C_FOXBIN2PRG_SYNTAX_INFO_EXAMPLE_LOC_ properties.
4. For changed functionality, add descriptive text on the appropriate _.md_ file in _docs_ folder.
2. Alter the version number for the EXE to the version used above.
0. Compile to EXE **in VFP9 SP2**
8. Change Thor ([see below](#thor-conventions))
8. commit
9. push to your fork
0. create a pull request
1.
## Thor conventions
This project is part of [VFPX](https://vfpx.github.io/) and published via [Thor](https://github.com/VFPX/Thor).
There are some considerations to make to add a new version to Thor.
Please check [Supporting Thor Updater](https://vfpx.github.io/thorupdate/)
In special:
- Update _Project.txt_, in special the version number
- and run the script included, or
- add files to _FoxBin2Prg.zip_, namely
- FoxBin2Prg.prg,
- FoxBin2Prg.exe,
- the config files templates
- Update the version number in _FoxBin2PrgVersion.txt_
- Right-click CreateThorUpdate.ps1 in the ThorUpdater folder and choose Run with PowerShell
Thanks
----
Last changed: _2023/09/04_ ![Picture](../docs/pictures/vfpxpoweredby_alternative.gif)

302
README.md
View File

@@ -1,151 +1,151 @@
# FoxBin2Prg v1.19.79
**Binary/Text Converting program for Microsoft Visual FoxPro**
## Lutz Scheffler
![VFPX Logo](https://vfpx.github.io/images/vfpxbanner_small.gif)
This is the perpetuation of [Fernando D. Bozzo](https://github.com/fdbozzo) foxbin2prg.
It's the main tool with some bugs fixes and some new functions.
Since I now maintain this project, my [fork](https://github.com/lscheffler/foxbin2prg) is no longer in sync.
The spanish documentation is not longer maintained - it would fade.
For fast access a quick run is [introduced](#use-foxbin2prg), more [complex](./docs/FoxBin2Prg_Run.md#usage-1), and a large [documentation](./docs/FoxBin2Prg.md) exists too.
If you do not access FoxBin2Prg via [Thor](https://github.com/VFPX/Thor) remind yourself to compile the exe first.
---
---
If you like to value my work, support the Geeks at
[![Virtual Fox Fest!](https://virtualfoxfest.com/images/ZoomFoxSmall.png)](https://virtualfoxfest.com/) or [![Southwest Fox!](http://www.swfox.net/images/KokoWhite.jpg)](https://www.swfox.net).
I also do not reject invitations to a beer, next time in Gilbert.
---
---
If you like to see Fernandos blog, or value his work:
- Blog: http://fdbozzo.blogspot.com.es/
- [![DONATE!](http://www.pngall.com/wp-content/uploads/2016/05/PayPal-Donate-Button-PNG-File-180x100.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&amp;business=fdbozzo%40gmail%2ecom&amp;lc=ES&amp;item_name=FoxBin2Prg&amp;item_number=FoxBin2Prg&amp;currency_code=USD&amp;bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted)
Thank you for your support!
----
## Contribution
See [contribution](./.github/CONTRIBUTING.md)
---
---
## 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.
## Examples
### Redefine extensions of _Text_
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 FoxBin2Prg
```
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
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest settings
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
```
### Interactive list of options
```
DO FOXBIN2PRG.PRG WITH "?"
```
### Use with MS Windows SendTo
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!):
#### Process directories or individual files to _Text_
- Name:
`FoxBin2Prg - Binary2Text.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "BIN2PRG-SHOWMSG"`
#### Process directories or individual files to _Binary_
- Name:
`FoxBin2Prg - Text2Binary.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "PRG2BIN-SHOWMSG"`
#### Process individual files or directories asking what to convert
- Name:
`FoxBin2Prg.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "INTERACTIVE-SHOWMSG"`
##### How to use the links
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.
## 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/.
---
---
## Changes
See [Changes](./docs/FoxBin2Prg_Changes.md)
### Changes to Settings
To get the new settings in config file, use the new create-a-template function:
```
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest default settings
DO FOXBIN2PRG.PRG WITH "-C","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with active settings
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
```
----
## Limitations
If dealing with project files, FoxBin2Prg will fail if files of the project are not stored on the drive of the project.
See [issue #93](https://github.com/fdbozzo/foxbin2prg/issues/93).
----
## Usage
For usage see [documentation](./docs/FoxBin2Prg.md)
Last changed: _2023/08/04_ ![Picture](./docs/pictures/vfpxpoweredby_alternative.gif)
# FoxBin2Prg v1.20.05
**Binary/Text Converting program for Microsoft Visual FoxPro**
## Lutz Scheffler
![VFPX Logo](https://vfpx.github.io/images/vfpxbanner_small.gif)
This is the perpetuation of [Fernando D. Bozzo](https://github.com/fdbozzo) foxbin2prg.
It's the main tool with some bugs fixes and some new functions.
Since I now maintain this project, my [fork](https://github.com/lscheffler/foxbin2prg) is no longer in sync.
The spanish documentation is not longer maintained - it would fade.
For fast access a quick run is [introduced](#use-foxbin2prg), more [complex](./docs/FoxBin2Prg_Run.md#usage-1), and a large [documentation](./docs/FoxBin2Prg.md) exists too.
If you do not access FoxBin2Prg via [Thor](https://github.com/VFPX/Thor) remind yourself to compile the exe first.
---
---
If you like to value my work, support the Geeks at
[![Virtual Fox Fest!](https://virtualfoxfest.com/images/ZoomFoxSmall.png)](https://virtualfoxfest.com/) or [![Southwest Fox!](http://www.swfox.net/images/KokoWhite.jpg)](https://www.swfox.net).
I also do not reject invitations to a beer, next time in Gilbert.
---
---
If you like to see Fernandos blog, or value his work:
- Blog: http://fdbozzo.blogspot.com.es/
- [![DONATE!](http://www.pngall.com/wp-content/uploads/2016/05/PayPal-Donate-Button-PNG-File-180x100.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&amp;business=fdbozzo%40gmail%2ecom&amp;lc=ES&amp;item_name=FoxBin2Prg&amp;item_number=FoxBin2Prg&amp;currency_code=USD&amp;bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted)
Thank you for your support!
----
## Contribution
See [contribution](./.github/CONTRIBUTING.md)
---
---
## 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.
## Examples
### Redefine extensions of _Text_
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 FoxBin2Prg
```
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
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest settings
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
```
### Interactive list of options
```
DO FOXBIN2PRG.PRG WITH "?"
```
### Use with MS Windows SendTo
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!):
#### Process directories or individual files to _Text_
- Name:
`FoxBin2Prg - Binary2Text.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "BIN2PRG-SHOWMSG"`
#### Process directories or individual files to _Binary_
- Name:
`FoxBin2Prg - Text2Binary.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "PRG2BIN-SHOWMSG"`
#### Process individual files or directories asking what to convert
- Name:
`FoxBin2Prg.lnk`
- Right-click/Properties/destination_
`<path>\foxbin2prg.exe "INTERACTIVE-SHOWMSG"`
##### How to use the links
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.
## 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/.
---
---
## Changes
See [Changes](./docs/Change_Log.md)
### Changes to Settings
To get the new settings in config file, use the new create-a-template function:
```
DO FOXBIN2PRG.PRG WITH "-c","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with newest default settings
DO FOXBIN2PRG.PRG WITH "-C","template.cfg" ==> Generates a template for FoxBin2Prg.cfg config file with active settings
DO FOXBIN2PRG.PRG WITH "-t","template.dbf.cfg" ==> Generates a template for table.dbf.cfg per table config file with newest settings
```
----
## Limitations
If dealing with project files, FoxBin2Prg will fail if files of the project are not stored on the drive of the project.
See [issue #93](https://github.com/fdbozzo/foxbin2prg/issues/93).
----
## Usage
For usage see [documentation](./docs/FoxBin2Prg.md)
Last changed: _2023/09/04_ ![Picture](./docs/pictures/vfpxpoweredby_alternative.gif)

Binary file not shown.

View File

@@ -10,8 +10,8 @@ local;
lcappName = "FoxBin2Prg"
*Set following two numbers on version
ldDate = date(2023,03,20)
lcmajorVersion = "1.19.78"
ldDate = date(2023,09,04)
lcmajorVersion = "1.20.05"
*lnJulian = val(sys(11, m.ldDate)) - val(sys(11, {^2000-01-01}))
*lcJulian = padl(transform(lnJulian), 4, '0')
@@ -39,6 +39,9 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
+++++++++++++++++++++++ Change History +++++++++++++++++++++++
2023-09-05 v1.20.05
- Updated to @lscheffler's fork
2023-03-20 v1.19.78
**Enhancement**: Text2Bin on PJX errors out for projects with an attach icon that has a drive letter on its path. #93 (ericbarte)
@@ -175,7 +178,7 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
- Bug Fix: Error 1098, Cannot find ... [ENDT] that closes ... [TEXT] Issue#26 when there is a field named TEXT as first line-word (KIRIDES)
2018-06-20 v1.19.51.2
- Bug Fix: When converting to text a DBF that belongs to a DBC with events disabled, conversion fails (Jairo Arg<EFBFBD>elles / Juan C. Perdomo)
- Bug Fix: When converting to text a DBF that belongs to a DBC with events disabled, conversion fails (Jairo Arg elles / Juan C. Perdomo)
2018-05-12 v1.19.51.1
- Bug Fix: If capitalization is used on a DBC view info, then related information is not exported correctly or entirely, so could be lost (SkySurfer1)
@@ -266,14 +269,14 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
- Bug Fix: When processing a directory or a project with all the files, sometimes an "Alias already in use" error may occur (Dave Crozier)
- Bug Fix mnx: When menu options contains '&&' in their texts, menu binary is corrupted when regenerated (Walter Nichols)
- Bug Fix fb2p_diff: When calling fb2p_diff.exe from a directory out of FoxBin2Prg dir, an error is thrown because FoxBin2Prg is not found (Mike Potjer)
- Feature: In some environments and under some conditions WSscript.Shell object can cause problems, so now it's replaced with Win32 native functions (Aur<EFBFBD>lien Dellieux)
- Feature: In some environments and under some conditions WSscript.Shell object can cause problems, so now it's replaced with Win32 native functions (Aur lien Dellieux)
- Bug Fix frx/lbx: Ordering of report objects changes the ZOrder of near objects that can overlap, which can cause bad visualization and printing (Ryan Harris)
- Bug Fix frx/lbx: When regenerating reports or labels with multiline texts center or right aligned, alignment is not completely right (Ryan Harris)
- Bug Fix frx/lbx: When grouping objects in design mode, generating text and regenerating binary cause the lost of the grouping (does not affect data) (Lutz Scheffler)
- Bug Fix Pjx: SPR and MPR files are not correctly identified in the PJX Project info (Ralf Wagner)
- Bug Fix Pj2: An error is thrown when regenerating a PJX from a PJ2 when some file have parenthesis in it's name (EddieC)
- Feature (dbf): New ExcludeDBFAutoincNextval parameter for minimizing DB2 differences (edyshor)
- Bug Fix: When processing a file on root dir, a 2062 error occurs (Aur<EFBFBD>lien Dellieux)
- Bug Fix: When processing a file on root dir, a 2062 error occurs (Aur lien Dellieux)
- Feature: Added VFP 9 runtimes (vfp9r.dll, vfp9renu.dll) so FoxBin2Prg can be used with VFP when VPF IDE is not installed
@@ -357,7 +360,7 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
2014/12/13 v1.19.38
- Feature: Now is possible to use FoxBin2Prg for batch conversions directly from the File Explorer (see README.txt), without the need of vbs scripts, that sometimes can make trouble or are not permitted by IT department (Francisco Prieto)
- Feature: Enhanced Multilanguage support by 3 ways: 1-Automatic [DEFAULT] (depending on VERSION(3)); 2-By parameter, using the new method ChangeLanguage(); 3-Using the new setting "Language" in foxbin2prg.cfg
- Feature: Detection of duplicated methods on vc2/sc2 files to notify those cases of vcx/scx file corruption (<EFBFBD>lvaro Castrill<EFBFBD>n)
- Feature: Detection of duplicated methods on vc2/sc2 files to notify those cases of vcx/scx file corruption ( lvaro Castrill n)
2014/11/30 v1.19.37
- Feature: Added Class per file support, configurable with UseClassPerFile:1 (Ryan Harris/Lutz Scheffler)
@@ -413,12 +416,12 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
- Feature: Added support for exporting DBF data for DIFF (It's intended just for DIFF small DBFs, as config ones, not for true Data export. Binary fields are not exported and there is not an Import Data feature) (Doug Hennig)
2014/07/06 v1.19.26
- Feature: Drop asterisks between "ENDPROC" and "PROCEDURE", analyzed in that exact order, to regenerate binary without errors. (Daniel S<EFBFBD>nchez)
- Feature: Drop asterisks between "ENDPROC" and "PROCEDURE", analyzed in that exact order, to regenerate binary without errors. (Daniel S nchez)
- Feature: Add the l_DropNullCharsFromCode configuration option, enabled by default, to allow droping NULLs from source code. (Matt Slay)
- Bug Fix cfg: ExtraBackupLevel does not work when using multi-configuration
2014/06/25 v1.19.25
- When processing one or multiple files with vbs scripts, show a message indicating the status of the generation, and show the error log if any error occurs (Pedro Guti<EFBFBD>rrez M.)
- When processing one or multiple files with vbs scripts, show a message indicating the status of the generation, and show the error log if any error occurs (Pedro Guti rrez M.)
- Code cleaning and normalization
- ClearUniqueID is True by default for tx2 files
- OptimizeByTimestamp is False by default, to avoid possible automatic modifications made by VFP when opening a form or a classlib
@@ -634,7 +637,7 @@ Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
- Unit testing cases with FoxUnit
2013/11/27 v1.5
- Bug fix: On some forms dataenvironment didn't regenerate appropiately (Luis Mart<EFBFBD>nez)
- Bug fix: On some forms dataenvironment didn't regenerate appropiately (Luis Mart nez)
2013/11/27 v1.4
- Added mask support

Binary file not shown.

View File

@@ -25,15 +25,14 @@ _LegalCopyright = "MIT License"
_LegalTrademark = "MIT License"
_ProductName = "FOXBIN2PRG"
_MajorVer = "1"
_MinorVer = "19"
_Revision = "78"
_MinorVer = "20"
_Revision = "05"
_LanguageID = "1034"
_AutoIncrement = "0"
*</DevInfo>
*<BuildProj>
*<.HomeDir = 'e:\se\vfpx\foxbin2prg' />
FOR EACH loProject IN _VFP.Projects FOXOBJECT
loProject.Close()
@@ -51,6 +50,9 @@ loProject = _VFP.Projects('foxbin2prg.pjx')
WITH loProject.FILES
.ADD('config\config.fpw') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('docs\foxbin2prg_changes.md') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('foxbin2prg.cfg.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('foxbin2prg.dbf.cfg.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('foxbin2prg.ico') && *< FileMetadata: Type="x" Cpid="0" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('foxbin2prg.jpg') && *< FileMetadata: Type="x" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('foxbin2prg.prg') && *< FileMetadata: Type="P" Cpid="1252" Timestamp="0" ID="0" ObjRev="544" User="" />
@@ -93,6 +95,7 @@ WITH loProject.FILES
.ADD('props_xmladapter.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('props_xmlfield.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('props_xmltable.txt') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
.ADD('readme.md') && *< FileMetadata: Type="T" Cpid="1252" Timestamp="0" ID="0" ObjRev="0" User="" />
*</BuildProj>
.ITEM('__newproject.f2b').Remove()
@@ -103,6 +106,10 @@ WITH loProject.FILES
*</FileComments>
*<ExcludedFiles>
.ITEM(lcCurdir + 'docs\foxbin2prg_changes.md').Exclude = .T.
.ITEM(lcCurdir + 'foxbin2prg.cfg.txt').Exclude = .T.
.ITEM(lcCurdir + 'foxbin2prg.dbf.cfg.txt').Exclude = .T.
.ITEM(lcCurdir + 'readme.md').Exclude = .T.
*</ExcludedFiles>
*<TextFiles>
@@ -113,7 +120,6 @@ ENDWITH
WITH loProject
*<ProjectProperties>
.SetMain(lcCurdir + 'foxbin2prg.prg')
.Icon = lcCurdir + 'foxbin2prg.ico'
.Debug = .T.
.Encrypted = .F.

Binary file not shown.

Binary file not shown.