0% found this document useful (0 votes)
203 views30 pages

VFP Advanced Project

Fox

Uploaded by

Ruboto Boto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
203 views30 pages

VFP Advanced Project

Fox

Uploaded by

Ruboto Boto
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

VFP Advanced project

1, VFP Advanced 32-bit version


2, VFP Advanced 64-bit version

Website: www.baiyujia.com
Email: ccb2000@163.com
VFP Advanced 32-bit version
• VFP Advanced 32-bit version = VFP
9.0.0.7423 (SP2) + VFP 9.0 Fixes, it is an
unofficial service package.
• VFP Advanced 32-bit supports all
languages same as VFP 9.0, and there
are no language resource files
VFPA???.DLL, they have been merged to
VFPA.EXE.
• VFP Advanced 32-bit is 100% compatible
with VFP 9.0.
VFP Advanced 32-bit version
• VERSION(): Visual FoxPro 10.
• Visual C++ Runtime library file: MSVCR71.DLL (Version
7.1) for the VFP Advanced 32-bit 202209 and earlier
versions, MSVCR100.DLL (Version 10.0) for the VFP
Advanced 32-bit 202210 and later versions.
• VFP Advanced 32-bit Runtime library files: VFPAR.DLL
and VFPAT.DLL.
• VFP Advanced Large Memory Manager run file:
VFPLMM.DLL for the VFP Advanced 10.2 or later
versions.
• System Variable _WIN64: always returns false (.F.) in
VFP Advanced 32-bit.
• System Function SYS(17): Pentium.
VFP Advanced 64-bit version
• VFP Advanced 64-bit version = VFP
9.0.0.7423 (SP2) + VFP 9.0 Fixes, it is an
unofficial 64-bit service package.
• VFP Advanced 64-bit supports all
languages same as VFP 9.0, and there
are no language resource files
VFPA???.DLL, they have been merged to
VFPA.EXE.
• VFP Advanced 64-bit is 100% compatible
with VFP 9.0.
VFP Advanced 64-bit version
• VERSION(): Visual FoxPro 10.0.
• Visual C++ Runtime library file: 64-bit MSVCR100.DLL
(Version 10.0).
• VFP Advanced 64-bit Runtime library files: 64-bit
VFPAR.DLL and 64-bit VFPAT.DLL.
• VFP Advanced Large Memory Manager run file: 64-bit
VFPLMM.DLL for the VFP Advanced 10.2 or later
versions.
• System Variable _WIN64: always returns true (.T.) in
VFP Advanced 64-bit.
• System Function SYS(17): X64 (AMD or Intel).
VFP Advanced 64-bit version
• RIP-relative Addressing: uses RIP-relative
Addressing, faster and smaller.
• VFP Advanced 64-bit calls the 64-bit
Windows APIs directly, faster than VFP
Advanced 32-bit and VFP 9.0.
VFP Advanced 32&64-bit version
• We can install VFP 9.0, VFP Advanced 32&64-bit on the same computer.

• The VFP 9.0 default installed folder:


• C:\Program Files (x86)\Microsoft Visual Foxpro 9 (or C:\VFP9)
• C:\Program Files (x86)\Common Files\microsoft shared\VFP

• The VFP Advanced 32-bit default installed folder:


• C:\Program Files (x86)\Microsoft Visual Foxpro Advanced (or C:\VFPA)
• C:\Program Files (x86)\Microsoft Visual Foxpro Advanced 10.1 (or C:\VFPA101)
• C:\Program Files (x86)\Microsoft Visual Foxpro Advanced 10.2 (or C:\VFPA102)
• C:\Program Files (x86)\Common Files\microsoft shared\VFP
• C:\Windows\SysWOW64

• The VFP Advanced 64-bit default installed folder:


• C:\Program Files\Microsoft Visual Foxpro Advanced (or C:\VFPA64)
• C:\Program Files\Microsoft Visual Foxpro Advanced 10.1 (or C:\VFPA64101)
• C:\Program Files\Microsoft Visual Foxpro Advanced 10.2 (or C:\VFPA64102)
• C:\Program Files\Common Files\microsoft shared\VFP
• C:\Windows\System32
VFP Advanced 32&64-bit version
• The VFP 9.0 default settings in the windows registry:
• HKEY_CURRENT_USER\Software\Microsoft\VisualFoxPro\9.0\Options

• The VFP Advanced 32-bit default settings in the windows registry:


• HKEY_CURRENT_USER\Software\Microsoft\VisualFoxPro\10\Options
• TMPFILES=C:\Users\<username>\AppData\Local\Temp
• ResourceTo=C:\Users\<username>\AppData\Roaming\Microsoft\Visual FoxPro
Advanced\FOXUSER.DBF

• The VFP Advanced 64-bit default settings in the windows registry:


• HKEY_CURRENT_USER\Software\Microsoft\VisualFoxPro64\10\Options
• TMPFILES=C:\Users\<username>\AppData\Local\Temp
• ResourceTo=C:\Users\<username>\AppData\Roaming\Microsoft\Visual FoxPro
Advanced (x64)\FOXUSER.DBF
VFP Advanced 32&64-bit version
• The VFP Advanced 32-bit setup program will create the batch files:
• "C:\Program Files (x86)\Microsoft Visual Foxpro 9\vfp9reg.bat",
• "C:\Program Files (x86)\Microsoft Visual Foxpro Advanced\vfpareg.bat".
• "C:\Program Files (x86)\Microsoft Visual Foxpro Advanced 10.1\vfpareg.bat".
• "C:\Program Files (x86)\Microsoft Visual Foxpro Advanced 10.2\vfpareg.bat".
• The VFP Advanced 64-bit setup program will create the batch files:
• "C:\Program Files (x86)\Microsoft Visual Foxpro 9\vfp9reg.bat",
• "C:\Program Files\Microsoft Visual Foxpro Advanced\vfpareg.bat".
• "C:\Program Files\Microsoft Visual Foxpro Advanced 10.1\vfpareg.bat".
• "C:\Program Files\Microsoft Visual Foxpro Advanced 10.2\vfpareg.bat".

• If we want to double click to open the files (.pjx, .dbf, .scx, .frx, etc.) in file explorer with VFP 9.0, we can
run the batch file "C:\Program Files (x86)\Microsoft Visual Foxpro 9\vfp9reg.bat" as Administrator.
• If we want to double click to open the files (.pjx, .dbf, .scx, .frx, etc.) in file explorer with VFP Advanced
32-bit, we can run the batch file "C:\Program Files (x86)\Microsoft Visual Foxpro Advanced\vfpareg.bat"
as Administrator.
• If we want to double click to open the files (.pjx, .dbf, .scx, .frx, etc.) in file explorer with VFP Advanced
64-bit, we can run the batch file "C:\Program Files\Microsoft Visual Foxpro Advanced\vfpareg.bat" as
Administrator.
VFP Advanced 10.0&10.1 version
• The VFP Advanced 10.0 version (32-bit) default installed folder:
• C:\Program Files (x86)\Microsoft Visual Foxpro Advanced (or C:\VFPA)
• C:\Program Files (x86)\Common Files\microsoft shared\VFP
• C:\Windows\SysWOW64

• The VFP Advanced 10.1 version (32-bit) default installed folder:


• C:\Program Files (x86)\Microsoft Visual Foxpro Advanced 10.1 (or C:\VFPA101)
• C:\Program Files (x86)\Common Files\microsoft shared\VFP
• C:\Windows\SysWOW64

• If we install VFP Advanced 10.0 version first, and then install VFP Advanced 10.1 version, for some files
and settings, for example, the runtime library files in the Common Program Files folder and the Windows
System folder, the system component files (Tools --> Options --> File Locations), the file associations
(double click the files (.pjx, .dbf, .scx, .frx, etc.) in file explorer), the default settings in the windows
registry (HKEY_CURRENT_USER\Software\Microsoft\VisualFoxPro\10\Options), they are 10.1 version
(the last installed version).

• If we install VFP Advanced 10.1 version first, and then install VFP Advanced 10.0 version, some files and
settings are 10.0 version (the last installed version).

• Recommend to only install one of VFP Advanced 10.0 version and VFP Advanced 10.1 version on the
same computer.
The DECLARE statements
• VFP Advanced 64-bit calls the 64-bit
Windows APIs.
• Many (over 8000) 64-bit Windows APIs can
run fine.
• VFP Advanced 64-bit supports all data types
same as VFP 9.0.
• In VFP Advanced 64-bit, for the HANDLE
data type and the size_t data type,
recommend to use the LONG data type
instead of the INTEGER data type.
The DECLARE statements
• zlib64.dll ok.
• libhpdf64.dll and libpng1664.dll ok.
• ClrHost.dll and wwDotNetBridge.dll ok?
The SET LIBRARY TO statements
• VFP Advanced 64-bit can only use the 64-
bit .fll libraries.
• FoxTools.fll, fd3.fll and wizard.fll ok.
• VFPX64.fll and dFPUG64.fll ok.
• vfp2c64.fll ok.
The SET LIBRARY TO statements
• xfrxlib64.fll ok.
• vfpencryption.fll and vfpcompression.fll?
The 64-bit ODBC drivers
and the 64-bit ADO objects
• The 64-bit ODBC drivers and the 64-bit
ADO objects for dbf tables, sql server,
mysql and mariadb, all are fine.
The COM objects
• For the out-of-process .exe automation
server (for example, Microsoft Word,
Excel), VFP Advanced 64-bit can use the
64-bit COM objects and the 32-bit COM
objects.
• For the in-process .dll automation server,
VFP Advanced 64-bit can only use the 64-
bit COM object.
The COM+ applications
• For the COM+ applications, VFP
Advanced 64-bit can use the 64-bit COM+
applications and the 32-bit COM+
applications.
The ActiveX controls
• VFP Advanced 64-bit can only use the 64-
bit ActiveX controls.
• But there is no the MS Common controls
64-bit version, no 64-bit MS TreeView, no
64-bit MS ListView, no 64-bit MS
DateTimePicker, etc.
The third-part ActiveX controls
• https://dbi-tech.com/
• http://www.exontrol.com/
• http://www.codejock.com/
Large Files
• VFP Advanced 10.1 or later version can use Large Files.
• For Large Files, there is no any changes for the dbf, fpt
and cdx files structure.
• Maximum size of a file: 2048 TB.
• Maximum # of records per table file: 1 billion (same as
VFP 9.0).
• Maximum size of a table file (or cursor): 1 billion *
RECSIZE(), if RECSIZE()=65500 (maximum), it is 64 TB.
• Maximum block of an FPT file: 2 billion.
• Maximum size of an FPT file: 2 billion *
SET("BLOCKSIZE"), if SET("BLOCKSIZE")=64 (default
setting), it is 128 GB.
• Maximum size of an index file: 4 GB (double of VFP 9.0).
Large Memory (VFPLMM)
• VFP Advanced 10.2 or later version can use Large
Memory.
• If VFP Advanced 10.2 or later version can use Visual
FoxPro Large Memory Manager (VFPLMM),
• when VFP Advanced 32-bit 10.2 or later version is
running on Windows 32-bit system, it can use 4 GB
memory (double of VFP 9.0),
• when VFP Advanced 32-bit 10.2 or later version is
running on Windows 64-bit system, it can use 32 GB
(maximum) memory,
• when VFP Advanced 64-bit 10.2 or later version is
running on Windows 64-bit system, it can use 32 GB
(maximum) memory.
Large Memory (VFPAWE)
• If VFP Advanced 10.2 or later version can use Visual
FoxPro Address Windowing Extensions (VFPAWE),
• when VFP Advanced 32-bit 10.2 or later version is
running on Windows 32-bit system, it can use 4 GB
memory (Disabling Physical Address Extension (PAE))
or 64 GB (maximum, Enabling Physical Address
Extension (PAE)) memory,
• when VFP Advanced 32-bit 10.2 or later version is
running on Windows 64-bit system, it can use 64 GB
(maximum) memory,
• when VFP Advanced 64-bit 10.2 or later version is
running on Windows 64-bit system, it can use 64 GB
(maximum) memory.
Large Memory (VFPLMD)
• If VFP Advanced 10.2 or later version can use Visual
FoxPro Large Memory Driver (VFPLMD), except Visual
FoxPro Advanced 32-bit 10.2 or later version is running
on Windows 32-bit system,
• when Visual FoxPro Advanced 32-bit 10.2 or later
version is running on Windows 64-bit system, it can use
4 TB (maximum) memory,
• when Visual FoxPro Advanced 64-bit 10.2 or later
version is running on Windows 64-bit system, it can use
4 TB (maximum) memory.
Large Memory
• VFP Advanced 10.2 or later version will try to use Visual
FoxPro Large Memory Driver (VFPLMD) first,
• if it runs failed, it will try to use Visual FoxPro Address
Windowing Extensions (VFPAWE),
• if it runs failed, it will try to use Visual FoxPro Large
Memory Manager (VFPLMM),
• if it runs failed, it will not use large memory.
Reference websites
• 1, baiyujia.com:
• http://baiyujia.com/vfpadvanced/default.asp
• http://baiyujia.com/vfpdocuments/default.asp

• 2, Eric Selje - Southwest Fox 2019, VFP Advanced: Is This the Next Visual FoxPro?
• https://saltydogllc.com/whitepapers-articles-slides-etc/

• 3, Visual FoxPro Advanced 32 y 64 bits (Spanish language)


• https://spainvfp.webcindario.com/visual_foxpro/vfp_advanced/vfp_advanced.php

• 4, David's blog (Spanish language)


• https://davidacuna.wordpress.com/

• 5, Freda's website (Italian language)


• http://www.annibalefreda.com/perche-usare-ancora-il-visual-fox-pro--.html

• 6, John Ryan - Virtual Fox Fest 2020, Visual FoxPro Advanced and VFP C++ Compiler: A New
Lease of Life for VFP
• https://virtualfoxfest.com/Sessions.aspx
• https://youtu.be/iQqoLBOCTrI
Others
• Large Files problem? in the 10.1 version.
• Large Memory problem? in the 10.2 version.
• Unicode problem? in the next version?
• Run on other platforms? No plan, VFP
Advanced 64-bit can only run on Windows 64-bit,
perhaps it can run on Wine on Linux.
History
• August 2012, VFP Advanced 64-bit version start.
• August 2013, VFP Advanced 64-bit Preview version.
• March 2014, VFP Advanced 64-bit Alpha version.
• January 2015, VFP Advanced 64-bit Beta version.
• May 2018, VFP Advanced 64-bit Release version.
• December 2018, VFP Advanced 64-bit 2018 Release version.
• December 2019, VFP Advanced 64-bit 2019 Release version.
• March 2020, VFP Advanced 10.1 Alpha version.
• May 2020, VFP Advanced 10.1 Beta version.
• December 2020, VFP Advanced 10.1 Release version.
• December 2021, VFP Advanced 10.1 2021 Release version.
• December 2022, VFP Advanced 10.1 2022 Release version.
• June 2023, VFP Advanced 10.2 Alpha version.
• July 2023, VFP Advanced 10.2 Beta version.
Thanks
• In the last few years, I developed the VFP Advanced project, it took most of my working time.
• Now I have finished the VFP Advanced (x64) first release version, and I would like to say many thanks to my friends,
• for their testing, suggestions, encouragement and support.

• From 2010:
• John Ryan - many suggestions and articles (on levelextreme.com) for VFP C++ Compiler and VFP Advanced 64-bit.
• mk_common - some suggestions for VFP C++ Compiler and VFP Advanced 64-bit.

• From 2011:
• Claus Schuster - many suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Burkhard Stiller - translate some VFP C++ Compiler Chinese documents to English documents.

• From 2012:
• Paul Bachelard - start the VFP Advanced 64-bit project, many suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Pete Sass - many suggestions and articles (on foxite.com) for VFP C++ Compiler and VFP Advanced 64-bit.
• Jens Weigand - some suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Yahya Aboudalal - some suggestions for VFP Advanced 64-bit.

• From 2013:
• Kalpesh Chhatrala - some suggestions for VFP Advanced 64-bit.
• Onytoo - some suggestions for VFP Advanced 64-bit.

• From 2014:
• David Acuna - many suggestions and articles (on wordpress.com) for VFP C++ Compiler and VFP Advanced 64-bit.
• Jesus Pacheco - some suggestions for VFP Advanced 64-bit.
• Jorge Matheus - some suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Carton Jeston - many suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Stefano D'Amico - some suggestions for VFP Advanced 64-bit.
• Edelmiro Gonzalez - some suggestions for VFP Advanced 64-bit.
• JUAN CARLOS LOPEZ - some suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
Thanks
• From 2015:
• Walther Neuhardt - some suggestions for VFP Advanced 64-bit.
• Eduardo Garcia - some suggestions for VFP Advanced 64-bit.
• Jurgen Wondzinski (wOOdy) - some suggestions for VFP Advanced 64-bit.
• Oleg Dimuhametov - some suggestions for VFP Advanced 64-bit.
• Rahul Moudgill - some suggestions for VFP Advanced 64-bit.

• From 2016:
• Erick Naranjo - some suggestions for VFP C++ Compiler and VFP Advanced 64-bit.
• Kornienko - some suggestions for VFP Advanced 64-bit.
• Stjepan Vidacic - some suggestions for VFP Advanced 64-bit.

• From 2017:
• Thierry Nivelet - donate to the VFP Advanced project.
• Yousfi Benameur - some suggestions for VFP Advanced.

• From 2018:
• Vincent Helleboid - donate to the VFP Advanced project.
• Jurgen Nordholz - donate to the VFP Advanced project.

• From 2019:
• Andrew MacNeill - donate to the VFP Advanced project.
• Frank Moore - some suggestions for VFP Advanced.
• Alec Gagne - some suggestions for VFP C++ Compiler and VFP Advanced.
• Eric Selje - Southwest Fox 2019, VFP Advanced: Is This the Next Visual FoxPro?

• From 2020:
• Carlos Yohn Zubiria - some suggestions for VFP Advanced.
• Danilo Rizzieri - some suggestions for VFP Advanced.
Thanks
• Davide Fontana - many suggestions for VFP Advanced.
• FREDA Annibale - translate some VFP Advanced English documents to Italian documents.
• Irwin Rodriguez - some suggestions for VFP C++ Compiler and VFP Advanced.
• John Ryan - Virtual Fox Fest 2020, Visual FoxPro Advanced and VFP C++ Compiler: A New Lease of Life for VFP.
• Rens Post - some suggestions for VFP Advanced.
• SEE Mong Kiong - some suggestions for VFP C++ Compiler and VFP Advanced.

• From 2021:
• Bienvenido Aybar - donate to the VFP Advanced project.
• Xiao Yun - donate to the VFP Advanced project.
• Anthony Solomon - donate to the VFP Advanced project.
• John Ryan - Virtual Fox Fest 2021, VFP C++ Compiler: Towards another decade of secure, extensible, portable VFP apps.

• From 2022:
• Zdenek Vojc - donate to the VFP Advanced project.
• Michael Rodriguez - some suggestions for VFP C++ Compiler and VFP Advanced.
• John Ryan - Virtual Fox Fest 2022, Securing VFP Applications Against a World of Hackers.

• I would like to say many thanks to other friends who donate to the VFP Advanced project.

• I would also like to say many thanks to the Microsoft corporation who released Visual FoxPro 9.0 and
• published the Windows API functions on the msdn website.

You might also like