I actually wrote a whitepaper about that! Let me grab the relevant section (since I haven't posted the entire thing quite yet, as it's a SWFox Attendee Exclusive):
64-bit Visual FoxPro Advanced Unbelievable as it may sound, Chen has *also* created a 64-bit version of Visual FoxPro Advanced. It compiles 64-bit apps, which of course will only run on 64-bit versions of Windows and aren’t necessarily faster than 32-bit applications. So why would we want a 64-bit version? Advantages of 64-bit VFPA More RAM One obvious advantage of a 64-bit version is that it can take advantage of more system RAM. A quick check of MEMORY() shows that it still shows 640, same as it has since since the earliest days of Fox, so that’s not a very useful function in either version. SYS(1001), which “returns the virtual memory pool size, which is approximately four times the amount of physical memory” also shows the same value for both the 32 and 64 bit version. However, SYS(3050,1), which “returns the foreground buffer memory size” shows the same value as SYS(1001) in the 32-bit version of VFPA, but TWICE as much in the 64-bit version! VFP Advanced 64-bit can access up to 4 GB of RAM. Larger DBF Sizes? You may be thinking that a 64-bit version of VFPA may finally allow us to overcome the 2 gigabyte limitation on DBF files. As of this writing that’s not true, but Chen says he is working on this. At that file size, you may be wise to upsize your data anyway. Better Runtime VFP9 and VFPA (32-bit) both use the MSVCR71.dll C++ runtime behind the scenes. VFPA 64 uses the more recent and still supported MSVCR10.dll runtime. I could have sworn I saw an announcement in the last few days about Microsoft rolling all their C++ runtimes into one package, but now I can’t find it. If you find this information and share it with me before my session at Southwest Fox 2019, I’ll buy you a beer! 64-Bit ActiveX Controls and ODBC Drivers The most compelling case for using a 64-bit version of Visual FoxPro Advanced is that it allows you to use 64-bit ActiveX controls. For example, if your client has switched over to the 64-bit version of Microsoft Office, and your application does a lot of in-process Office automation, you’re out of luck unless your application is also 64-bit. Visual FoxPro 9 and even the 32-bit version of VFPA simply cannot use 64-bit ActiveX controls and COM objects, and there are some compelling 64-bit only controls, such as the ones from longtime Southwest Fox supports DBi Technologies ( https://www.dbi-tech.com/). [image: ctxTreeView - 64 bit ActiveX Control - Studio Controls COM 64][image: Text Box: Figure 5: DBi's TreeView Control][image: dbi gauge Win Froms control - Data Acquisition - multiple gauge objects in a single gauge control - from DBI Technologies Inc.] Figure 6: DBi's Gauge Control Similarly, you can take advantage of 64-bit ODBC drivers and their larger capacities. Disadvantages of 64-bit VFPA 32-Bit Controls and Drivers Do Not Work If you have 32-bit ActiveX controls in your VFP application, they will not work and will need to be upgraded (if an upgrade can even be found). This includes some MDAC and Jet DAO drivers. The control this might affect most is the oleTreeView control that ships with MSCOMCTL32.ocx. There is no 64-bit equivalent, so you’ll have to refactor your code to use the DBi Technologies TreeView control (Figure 5) . ListView, DateTimePicker, and other controls in that package will also be affected. Is it Compatible with 32-bit VFPA? Chen has done extensive work to make the 64-bit version of VFPA completely compatible with the 32-bit version. Any incompatibilities stem from circumstances beyond his control, like the ActiveX issues. He has extensively tested the DECLARE commands for using Windows APIs in VFP and claims most of them work, but not all of them. When I tried running GoFish5 in the 64-bit version of VFPA it failed because GoFish5 uses TreeView and other 32-bit ActiveX controls. It will have to be refactored for 64-bit. [image: Text Box: IF TYPE("_win64") = "L" AND _win64 ? "VFP Advanced 64-bit code" ELSE IF TYPE("_win64") = "L" AND ! _win64 ? "VFP Advanced 32-bit code" ELSE ? "VFP 9.0 or before code" ENDIF ENDIF]Chen has added a new _WIN64 constant that is only .T. for VFPA 64. This will allow for testing and conditional compilation of your applications, so you won’t have to maintain two separate codebases. Conclusion Regarding 64-Bit Visual FoxPro Advanced It’s unknown how long vendors of 3rd party controls will continue to produce and support their 32-bit versions, or for that matter how long Microsoft will continue to put out 32-bit versions of Windows since most computers are 64-bit these days. Having a 64-bit option gives FoxPro developers the possibility of moving into an all 64-bit future, alleviating a grave concern. Because it’s not a seamless transition, developers who want to ensure this future should begin testing their development tools (like GoFish) and their own applications in 64-bit VFPA to see what’s possible. On Thu, Apr 16, 2020 at 1:50 PM Charlie Coleman <ccbible...@gmail.com> wrote: > Quick question. Are you all saying there is no Automation available to MS > Office products in the 64-bit world? > > I recently wrote a quick VFP app to 'automate' Outlook (ref: > createobject('outlook.application')) to generate and send a bunch of > emails. The Outlook 365 was 64-bit (I think). Are you saying I would not > have been able to do that if I would have used the 'VFP 10' runtimes, etc? > I understand ActiveX/FLLs that were compiled 32-bit would be an issue - if > they did not have a 64-bit version included. > > -Charlie > > > On Thu, Apr 16, 2020 at 1:30 PM MB Software Solutions, LLC < > mbsoftwaresoluti...@mbsoftwaresolutions.com> wrote: > > > Ah yes, the automation angle. Temporarily forgot about that. Thanks, > > wOOdy! > > > > > > On 4/16/2020 1:24 PM, Jürgen Wondzinski wrote: > > > You are correct, there is no reason to have a 64bit FoxPro application > > for a regular Desktop app. It is different for building the middle-tier > of > > a distributed app or a Webserver extension. But on a regular desktop you > > gain nothing, but inherit a lot of problems: No support for regular 32bit > > ActiveX or FLL components. No COM-control of Office or other 32Bit stuff. > > > > > > Thus you better use the 32Bit version of VFPA, which is really highly > > recommended, since it cures a lot of old bugs. > > > > > > wOOdy > > > > > > > > > > > > -----Ursprüngliche Nachricht----- > > > Von: ProFox <profox-boun...@leafe.com> Im Auftrag von MB Software > > Solutions, LLC > > > Gesendet: Donnerstag, 16. April 2020 17:28 > > > An: ProFox Email List <profox@leafe.com> > > > Betreff: 64-bit app via the Chen version > > > > > > I finally I downloaded the VFPA runtime files and am going to use that > > IDE and develop/deploy with this "VFP 10" version since many here have > > spoken of it without much negativity. > > > > > > Question: what would be the benefit of using the 64-bit version IF I'M > > NOT USING DBFS (because in my MBSS apps, I use MariaDB/MySQL as the > > backend, not VFP). I just don't see the benefit other than for marketing > > my apps to say "they're 64-bit using the VC++ 10 runtimes." > > > > > > tia, > > > --Mike > > > > > > > > > > > > -- > > > This email has been checked for viruses by Avast antivirus software. > > > https://www.avast.com/antivirus > > > > > > [excessive quoting removed by server] _______________________________________________ Post Messages to: ProFox@leafe.com Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech Searchable Archive: https://leafe.com/archives This message: https://leafe.com/archives/byMID/caawxvumb-la1uqcv_s-ddkmxzqpydljsxcb5op4dzuko8sx...@mail.gmail.com ** All postings, unless explicitly stated otherwise, are the opinions of the author, and do not constitute legal or medical advice. This statement is added to the messages for those lawyers who are too stupid to see the obvious.