New version

see docs/Changelog.md
Merge branch 'fork_mod'
This commit is contained in:
Lutz
2023-12-06 14:03:41 +01:00
133 changed files with 2156 additions and 40747 deletions

Binary file not shown.

View File

@@ -1,30 +1,66 @@
lparameters toUpdateObject
local ldDate, ;
lnJulian, ;
lcJulian
ldDate = date(2023,9,23)
lnJulian = val(sys(11, ldDate)) - val(sys(11, {^2000-01-01}))
lcJulian = padl(transform(lnJulian), 4, '0')
toUpdateObject.AvailableVersion = 'FoxBin2Prg-1.20.07' + lcJulian + ;
'-update-' + dtoc(ldDate, 1)
* Set the properties of the passed updater object.
with toUpdateObject
.VersionNumber = '1.21.01 - 20231205'
.AvailableVersion = 'FoxBin2PRG-1.21.01-update-20231205'
.Notes = GetNotes()
.RegisterWithThor = GetRegisterWithThor()
endwith
return toUpdateObject
* Get the notes for the project. Edit this code as necessary.
*!* procedure GetRegisterWithThor
*!* local lcCommand
*!* text to lcCommand noshow
*!* lcBase = EXECSCRIPT(_SCREEN.cThorDispatcher, 'Thor_Proc_GetFoxBin2PrgFolder')
*!* IF FILE(m.lcBase+"clean_copied_memo.prg") THEN
*!* *remove old crap
*!* DO m.lcBase+"clean_thorfolder.prg" WITH lcBase
*!* ENDIF &&FILE(m.lcBase+"clean_copied_memo.prg")
*!*
*!* DELETE FILE (m.lcBase+"clean_thorfolder.*")
*!*
*!* endtext
*!*
*!* return lcCommand
*!* endproc &&GetRegisterWithThor
* Get the notes for the project.
procedure GetNotes
local lcNotes
text to lcNotes noshow
A 2-way conversor for Visual FoxPro 9 binary files intended to be used with SCM tools (Full or only Diff and Merge operations) or just for backup
Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF, FKY, MEM
To fix a bug, this version changes the text file header. It is suggested to create all text files and commit in one step.
Developed by Fernando D. Bozzo - GitHub: https://github.com/fdbozzo/foxbin2prg
FoxBin2Prg is a 2-way conversor for Visual FoxPro 9 binary files intended to be used with SCM tools (Diff and Merge operations) or just for backup
Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF
Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
Change History -------------------------------------------------------------
* look at https://github.com/fdbozzo/foxbin2prg/wiki/FoxBin2Prg-Full-Change-History
EndText
endtext
return lcNotes
* Register the tool with Thor. Note: Thor replaces ##InstallFolder## with the
* installation path for the tool when this code is executed.
* "FoxBin2PRG" is a Component. No procedure GetRegisterWithThor created by VFPX Deployment
* Register the tool with Thor. Note: Thor replaces ##InstallFolder## with the
* installation path for the tool when this code is executed.
procedure GetRegisterWithThor
local lcCommand
text to lcCommand noshow
* "FoxBin2PRG" is a Component. No code created by VFPX Deployment
endtext
return lcCommand
*created by VFPX Deployment, 05.12.2023 16:03:02

View File

@@ -1,5 +0,0 @@
appName = FoxBin2Prg
appID = FoxBin2Prg
majorVersion = 1.20.07
excludeFiles = *.bak,*.bat,*.fxp,*.tbk,*.tmp,*.dat,*.log,*.cvp,README.md,.gitignore,*.zip*,*.7z*,*- copia.*,*.private.*,test_*.*,xx*.*,*.lnk,vfp_init.*,tmp*.*,*.err, *.conflict.*, *.private., .gitignore, *.pui. *.prj*
excludeFolders = *.plastic*,*ThorUpdater*,*Documentacion*,*foxunit*,*foxunit_*,*pruebas varias*,*versiones*,*datos_test*

View File

@@ -1,30 +0,0 @@
lparameters toUpdateObject
local ldDate, ;
lnJulian, ;
lcJulian
ldDate = date()
lnJulian = val(sys(11, ldDate)) - val(sys(11, {^2000-01-01}))
lcJulian = padl(transform(lnJulian), 4, '0')
toUpdateObject.AvailableVersion = 'APPNAME-MAJORVERSION' + lcJulian + ;
'-update-' + dtoc(ldDate, 1)
return toUpdateObject
* Get the notes for the project. Edit this code as necessary.
procedure GetNotes
local lcNotes
text to lcNotes noshow
Developed by Fernando D. Bozzo - GitHub: https://github.com/fdbozzo/foxbin2prg
FoxBin2Prg is a 2-way conversor for Visual FoxPro 9 binary files intended to be used with SCM tools (Diff and Merge operations) or just for backup
Supported formats are: PJX, PJM, SCX, VCX, FRX, LBX, MNX, DBC, DBF
Demo video using FoxBin2Prg with PlasticSCM: http://youtu.be/sE4wQ50Itqg
Change History -------------------------------------------------------------
* look at https://github.com/fdbozzo/foxbin2prg/wiki/FoxBin2Prg-Full-Change-History
EndText
return lcNotes

View File

@@ -0,0 +1,137 @@
'---------------------------------------------------------------------------------------------------
' VFP9_FoxBin2Prg.vbs (VFPx: https://vfpx.codeplex.com/wikipage?title=FoxBin2Prg)
' 08/10/2014 - Fernando D. Bozzo (fdbozzo@gmail.com - Blog: http://fdbozzo.blogspot.com.es/)
'
'---------------------------------------------------------------------------------------------------
' ENGLISH:
' - Copy this file in the same directory of FoxBin2prg and create a shortcut
' on user's "SendTo" folder
' - Now you can select files or directories, right click and "SendTo" FoxBin2prg for batch conversion
'
' ESPA<50>OL:
' - Copie este archivo en el mismo directorio que FoxBin2prg y cree un acceso directo
' en la carpeta "SendTo" del usuario
' - Ahora puede seleccionar archivos o directorios, pulsar click derecho y "Enviar a" FoxBin2prg para conversiones batch
'---------------------------------------------------------------------------------------------------
Dim WSHShell, FileSystemObject, cEndOfProcessMsg, cWithErrorsMsg, cConvCancelByUserMsg, nProcessedFilesCount
Dim nExitCode, cEXETool, cEXETool2, nDebug
Set wshShell = CreateObject( "WScript.Shell" )
Set FileSystemObject = WScript.CreateObject("Scripting.FileSystemObject")
Set oVFP9 = CreateObject("VisualFoxPro.Application.9")
nExitCode = 0
'---------------------------------------------------------------------------------------------------
'Cumulative Flags:
' 0=OFF
' 1=Create FoxBin2prg LOG
' 2=Only show script calls (for testing without executing)
' 4=Don't show FoxBin2prg error modal messages
' 8=Show end of process message
' 16=Empty timestamps
nDebug = 1+0+4+8
'---------------------------------------------------------------------------------------------------
If WScript.Arguments.Count = 0 Then
'SIN PAR<41>METROS
nExitCode = 1
cErrMsg = "nDebug = " & nDebug
If GetBit(nDebug, 1) Then
cErrMsg = cErrMsg & Chr(13) & "Bit 0 ON: (1) Create FoxBin2prg LOG"
End If
If GetBit(nDebug, 2) Then
cErrMsg = cErrMsg & Chr(13) & "Bit 1 ON: (2) Only show script calls"
End If
If GetBit(nDebug, 3) Then
cErrMsg = cErrMsg & Chr(13) & "Bit 2 ON: (4) Don't show FoxBin2prg error modal messages"
End If
If GetBit(nDebug, 4) Then
cErrMsg = cErrMsg & Chr(13) & "Bit 3 ON: (8) Show End of Process message"
End If
If GetBit(nDebug, 5) Then
cErrMsg = cErrMsg & Chr(13) & "Bit 4 ON: (16) Empty timestamps"
End If
MsgBox cErrMsg, 64, "No parameters - Debug Status"
ElseIf WScript.Arguments.Count > 1 Then
MsgBox cErrMsg, 64, "You can select just ONE file with this script!"
Else
'CON PAR<41>METROS
cEXETool = Replace(WScript.ScriptFullName, WScript.ScriptName, "foxbin2prg.exe")
nFile_Count = 0
oVFP9.DoCmd( "SET PROCEDURE TO '" & cEXETool & "'" )
oVFP9.DoCmd( "PUBLIC oFoxBin2prg" )
oVFP9.DoCmd( "oFoxBin2prg = CREATEOBJECT('c_foxbin2prg')" )
oVFP9.DoCmd( "oFoxBin2prg.loadProgressbarForm()" )
oVFP9.DoCmd( "oFoxBin2prg.o_frm_avance.Caption = '" & FileSystemObject.GetBaseName( WScript.ScriptName ) & " - ' + oFoxBin2Prg.c_loc_process_progress" )
cFlagGenerateLog = "'0'"
cFlagDontShowErrMsg = "'0'"
cFlagShowCall = "'0'"
cFlagRecompile = "'1'"
If GetBit(nDebug, 1) Then
cFlagGenerateLog = "'1'"
End If
If GetBit(nDebug, 2) Then
cFlagJustShowCall = "1"
End If
If GetBit(nDebug, 3) Then
cFlagDontShowErrMsg = "'1'"
End If
If GetBit(nDebug, 5) Then
cNoTimestamps = "'1'"
End If
cFlagRecompile = "'" & FileSystemObject.GetParentFolderName( WScript.Arguments(0) ) & "'"
oVFP9.DoCmd( "oFoxBin2prg.o_frm_avance.Caption = '" & FileSystemObject.GetBaseName( WScript.ScriptName ) & " - ' + oFoxBin2Prg.c_loc_process_progress + ' (Press Esc to Cancel)'" )
If nDebug = 0 Or nDebug = 2 Then
cCMD = "oFoxBin2prg.execute( '" & WScript.Arguments(0) & "' )"
Else
cCMD = "oFoxBin2prg.execute( '" & WScript.Arguments(0) & "','INTERACTIVE','0','0'," _
& cFlagDontShowErrMsg & "," & cFlagGenerateLog & ",'1','','',.F.,''," _
& cFlagRecompile & "," & cNoTimestamps & " )"
End If
If cFlagJustShowCall = "1" Then
MsgBox cCMD, 64, "PARAMETERS"
Else
oVFP9.DoCmd( cCMD )
nExitCode = oVFP9.Eval("_SCREEN.ExitCode")
End If
If GetBit(nDebug, 4) Then
cEndOfProcessMsg = oVFP9.Eval("_SCREEN.o_FoxBin2Prg_Lang.C_END_OF_PROCESS_LOC")
cWithErrorsMsg = oVFP9.Eval("_SCREEN.o_FoxBin2Prg_Lang.C_WITH_ERRORS_LOC")
cConvCancelByUserMsg = oVFP9.Eval("_SCREEN.o_FoxBin2Prg_Lang.C_CONVERSION_CANCELLED_BY_USER_LOC")
nProcessedFilesCount = oVFP9.Eval("oFoxBin2prg.n_ProcessedFilesCount")
If nExitCode = 1799 Then
MsgBox cConvCancelByUserMsg & "! [p:" & nProcessedFilesCount & "]", 48+4096, WScript.ScriptName & " (" & oVFP9.Eval("oFoxBin2prg.c_FB2PRG_EXE_Version") & ")"
oVFP9.DoCmd("oFoxBin2prg.writeErrorLog_Flush()")
cErrFile = oVFP9.Eval("oFoxBin2prg.c_ErrorLogFile")
WSHShell.run cErrFile,3
ElseIf oVFP9.Eval("oFoxBin2prg.l_Error") Then
MsgBox cEndOfProcessMsg & "! (" & cWithErrorsMsg & ") [p:" & nProcessedFilesCount & "]", 48+4096, WScript.ScriptName & " (" & oVFP9.Eval("oFoxBin2prg.c_FB2PRG_EXE_Version") & ")"
oVFP9.DoCmd("oFoxBin2prg.writeErrorLog_Flush()")
cErrFile = oVFP9.Eval("oFoxBin2prg.c_ErrorLogFile")
WSHShell.run cErrFile,3
Else
MsgBox cEndOfProcessMsg & "! [p:" & nProcessedFilesCount & "]", 64+4096, WScript.ScriptName & " (" & oVFP9.Eval("oFoxBin2prg.c_FB2PRG_EXE_Version") & ")"
End If
End If
oVFP9.DoCmd( "oFoxBin2prg = NULL" )
oVFP9.DoCmd( "CLEAR ALL" )
Set oVFP9 = Nothing
End If
WScript.Quit nExitCode
Function GetBit(lngValue, BitNum)
Dim BitMask
If BitNum < 32 Then BitMask = 2 ^ (BitNum - 1) Else BitMask = "&H80000000"
GetBit = CBool(lngValue AND BitMask)
End Function