FoxPro Debugger Combined with Async Functions

Problem: A Chilkat FoxPro programmer was calling Rest.FullRequestSbAsync with a 3MB request.  It failed with a WSAECONNABORTED error message.  However, calling Rest.FullRequestSb works fine.  Why? Answer: When the async version of a method is called, Chilkat is starting a background thread to call the synchronous version of the method.  For example, the Async method returns a Task object.  When task.Run […]

“SKIP” keyword in FoxPro examples.

A helpful note from a Chilkat customer: I wanted to update you on the problem for future reference. SKIP is a reserved word in Visual Foxpro, I should have caught it, but didn’t until 2 days of screwing with it.  I knew it had to be something simple, because everything of yours worked perfect, fast, without a hitch except when […]

Register an ActiveX DLL from within FoxPro

A Chilkat customer provided this bit of Foxpro code: DECLARE LONG DllRegisterServer IN <yourfile.dll> IF DllRegisterServer() = 0 * OK ELSE * Not OK ENDIF It provides an alternative way to distribute an ActiveX DLL with a FoxPro application. Typically, one would create an installer, such as a .msi or something from an install software package (InstallShield perhaps), such that […]

ActiveX Events in FoxPro

ActiveX components and controls are used in many programming languages, each of which has it’s own way of handling event callbacks.  This blog post provides helpful hints about how to receive event callbacks from an ActiveX component. To receive the event, you must bind the ActiveX (also referred to as the COM server) event to the implemented interface methods on […]

FTP2 Events for FoxPro

The Chilkat FTP2 ActiveX has events for progress monitoring. The events may also be used to abort an FTP upload/download, or to skip files and/or directories. These are the events in Visual FoxPro terms: PROCEDURE _IChilkatFtp2Events_PutProgress(percentDone AS Number) AS VOID; PROCEDURE _IChilkatFtp2Events_GetProgress(percentDone AS Number) AS VOID; PROCEDURE _IChilkatFtp2Events_AbortCheck(abortFlag AS Number) AS VOID; PROCEDURE _IChilkatFtp2Events_BeginDownloadFile(filePath AS String, skipFlag AS Number) AS […]