Thursday, February 03, 2022

Matt Slay

Matt Slay was a great contributor to the Fox community and a great guy. Sadly, he passed away in October 2021. He is sorely missed.

However, his legacy lives on: the VFPX administrators have forked his projects and changed the project list links to the new repositories so community members can continue Matt's work.

Monday, January 31, 2022

Virtual Fox Fest 2022 (May)

Our one-day Virtual Fox Fest 2022 (May) will be Thursday, May 5, 2022. It still has the same great features everyone loves about VFF: great speakers delivering great sessions, live chatting during presentations, and getting to hang out virtually with new and old friends. This event will feature classic sessions from previous conferences, updated for 2022. 

We’re still discussing whether to hold Southwest Fox in Arizona this fall. We hope to announce our plans for a fall conference before our May event.

Wednesday, January 26, 2022

Speeding up SQL Server Management Studio Startup

SQL Server Management Studio typically takes a minute or so to start on my machine. I just figured it was a slow app, but then I saw it load much faster on another machine. Searching for a solution led me to Microsoft SQL Server Management Studio is too Slow (archive.org), which nicely solved the problem. Now it starts up in five seconds.

(As an aside, I use a hosts file from Steven Black's https://github.com/StevenBlack/hosts to help block malware and adware.)

Monday, January 03, 2022

How Thor Survives CLEAR ALL

You may be aware that Thor can survive a CLEAR ALL. (If you aren’t familiar with Thor, you really should be: https://github.com/VFPX/Thor.) While that seems impossible, it’s actually pretty simple but does require that Thor be designed in a certain way.

As you know, CLEAR ALL nukes all objects (among other things; see the VFP help for a complete list of what it affects). And yet, after executing CLEAR ALL, if you choose any of the functions in the Thor menus or use one of the hot keys you’ve assigned in Thor, it works. How is that possible?

The secret is that _SCREEN and _VFP are the only objects that survive CLEAR ALL. Object members of those objects don’t survive but non-object members retain their values. When Thor starts up, it creates a new property of _SCREEN called cThorDispatcher and puts some code into that property. Near the start of that code is the following:

If PemStatus(_Screen, 'oThor', 5) = .F. or Vartype(_Screen.oThor) # 'O'

   _Screen.AddProperty('oThor', Newobject ('oThor', 'Thor.vcx', lcThorApp, lcThorFolder))

EndIf

So, if there’s no oThor member of _SCREEN or it doesn’t contain an object, that property is created and the main Thor class is instantiated into it.

How does that help? It turns out that most places that call Thor functionality don’t execute code like _SCREEN.oThor.SomeMethod(). Instead, they use code like this:

loThor = execscript(_screen.cThorDispatcher, 'Thor Engine=')

loThor.SomeMethod()

Of course, Thor had to be designed to support that: every place that calls Thor methods has to go through the Thor dispatcher rather than calling them directly.

Ingenious!

Wednesday, November 03, 2021

Virtual Fox Fest 2021 (October) Follow-up

Here are some follow-up notes about Virtual Fox Fest 2021 (October):

  • Videos for all presentations are now available on YouTube for free to everyone, as our contribution to the VFP community. Be sure to subscribe to our channel.
  • If you didn't attend Virtual Fox Fest and want materials (white papers and sample code) for the presentations, go to  https://geekgatherings.com/Registration and "register" for the conference. You're not really registering since it's over, but in the Registration Fees section of the registration page, you'll see "Virtual Fox Fest Session Materials" for both of the 2021 events. There's also an opportunity to sponsor Virtual Fox Fest, which means your name will be listed on our Sponsors page.
  • We have tentative dates for an in-person Southwest Fox conference next year: October 27-30, 2022, at the same location as previous years: the SanTan Conference Center in Gilbert, Arizona. At this point, we don't know whether we'll be able to have an in-person event, but hope springs eternal!
  • If you didn't attend Virtual Fox Fest, check out our Facebook page and see what you missed, then plan to attend a future one so you can join in the fun.

Wednesday, September 29, 2021

Virtual Fox Fest 2021 (Oct): Early-Bird Ends Tomorrow

Last call! (we want to make sure we have your attention)

The Early Bird discount ends midnight (North American Eastern time) on Thursday, which is tomorrow night. Here is the direct link to get registered!

Virtual Fox Fest is October 14, 20, and 26, 2021!

Tuesday, September 21, 2021

Virtual Fox Fest 2021 (Oct): Early-Bird Deadline is Approaching

Thanks to all who have already registered for Virtual Fox Fest; we appreciate your support and our speakers are excited to share all their sessions with you all soon. There is less than a month until the first day of the conference!

That said, we know there are procrastinators who have not registered and have good intentions to do so before the conference starts. Please, please, please do so sooner than later. Our hard working registration staff of one is also a presenter who is practicing and refining his session, and has more than a full-time job working on customer projects.

In case you are procrastinating, please register for Virtual Fox Fest before October 1st. Three good reasons:

  1. Save yourself $50!
  2. Our registration staff has a super busy October and would appreciate you saving $50. Not joking.
  3. If you wait until the week of the conference to register, you might not get your credentials until just before the first session on October 14th. You’ll miss all the details about the conference we’ll be sharing over the next few weeks, as well as chance to read white papers and download the examples before the conference starts.

It literally takes just a few minutes to register. We'd hate to see you miss the opportunity to get a head start on all the goodies. Go get registered! Now, really, don't waste another minute. Here is the link: register me now

Virtual Fox Fest is October 14, 20, and 26, 2021!

Tuesday, August 17, 2021

Virtual Fox Fest 2021 (October): Speakers, Sessions, and Registration

Speakers and Sessions for Virtual Fox Fest 2021 (October) have been announced, and registration is open!

While I’m of course interested in all the sessions, the two that interest me the most are John Ryan’s VFP C++ Compiler: Towards Another Decade of Secure, Extensible, Portable VFP Apps and Christof Wollenhaupt’s WPF: Modern UIs in VFP Applications. I started using Visual FoxPro Advanced (VFPA) after Dr. Ryan’s session on it at Virtual Fox Fest 2020 so this session should take things to the next level. And Christof is a speaker’s speaker: the one session all speakers always attend because of Christof’s knowledge and humor.

Tuesday, July 20, 2021

New ErrorHandler VFPX Project

I released a new project to VFPX today called ErrorHandler. It’s a highly configurable and customizable error handler for any VFP application. Implementing ErrorHandler is as simple as adding a few files to your project, adding one line of code to your application startup, and deploying a few files with your application (some of which, such as wwDotNetBridge, you may already be deploying).

ErrorHandler supports logging error information to a table, displaying an easy-to-understand dialog to the user (see image below, although you can replace that dialog with one of your choosing), notifying support staff about the error via email or support ticket, and recovering from the error (either continuing in the application but not returning to the method that caused the error or terminating the application).

errordialog

See the documentation included with the project for complete details on how to implement and customize ErrorHandler in your applications.

Wednesday, June 02, 2021

Virtual Fox Fest 2021 (October) Speaker Reminder

Just a reminder that the deadline to submit session proposals for Virtual Fox Fest is next Monday, June 7th. You'll find details on our Call for Speakers page. We look forward to your ideas and session proposals.

Virtual Fox Fest is October 14, 20, and 26, 2021.