Because of the world wide CoVid19 crisis, many developers are forced to work at home at this moment.

We think this is the perfect moment to have a look at X# and how it can help you to move your XBase applications forward to .Net.

The best way to do that is to subscribe to our Friends Of XSharp program so you can work with the latest version of the product.

To encourage you to take this step we now have a special promotion price for the first year of your subscription.

If you use the coupon code "XS-WORK-AT-HOME" on our order form you will get 30% discount on the normal price for your first year of the subscription.

If you click this link then the discount will be automatically included in the price.

PS The discount is also valid if you work from your office ;-)

Today we have released a new installer for XSharp Bandol 2.3b to our FOX subscribers.

Most of the changes in this release were listed in our post from last week.


Today we have released a new installer for XSharp Bandol 2.3a to our FOX subscribers.

The changes in these release are:


  • When compiling in case sensitive mode, the compiler now checks to see if a child class declares a method that only differs from a method in its parent class by case
  • The warning message about assigning to a foreach iterator variable has been changed from "Cannot assign" to "Should not assign"
  • #pragma warnings was not working with the xs1234 syntax but only with numbers. This has been corrected.


  • Added the SetFieldExtent method to the IRdd interface
  • The USUAL type no longer "caches" the dialect setting
  • Fixed some problems with ACopy() with skipped or negative arguments.
  • The return value for Alias() is now in upper case.


  • The VO SDK Console class now uses the System.Console class internally.

RDD system

  • Fixed a problem in the Advantage RDDs that was caused by a casing problem (a method in a child class had a different case than the method in the parent class that it tried to override). This is why we also added a check to the compiler.
  • Creating an NTX with the DBFNTX driver could fail in some situations due to timing issues. This has been fixed.

Visual Studio integration

  •  Fixed a problem in keyword case synchronization that could corrupt the editor contents.

Please note that we have also changed the runtime and VO SDK help on the website. These two help collectoins are now merged. 

A short report on what we have been doing in the last month. We have not been idle, I can say, despite (or thanks to) the CoVid19 crisis

We have made some changes to almost every part of the system. Below is an (incomplete) list of the changes.


  • We have added support for bracketed strings
  • We are now generating a version resource based on Assembly attributes even when you have included a native resource file
  • Extended match markers in UDCs now also recognize file names including paths
  • We have implemented the /vo11 compiler option
  • We have solved several signed/unsigned warnings
  • You can now use PCall() to call typed function pointers stored inside VO structures


  • We have implemented several FoxPro functions and added the FoxPro Empty class
  • We have fixed some problems setting global state using the Set() function
  • Several workarea related functions were throwing an exception when called on a workarea that was not in use. This has been fixed.
  • We have fixed problems with several functions such as StrZero(), PadC(), IsSpace(), AFill(), ASort() etc.

Visual Studio integration

  • We have fixed an error in the keyword case synchronization code that could corrupt your code
  • The code behind the VS Form editor had problems with methods declared without return type. As a result forms could not be opened. This has been fixed.
  • Improved intellisense info for Defines and Enum members


  • When porting from Clipboard contents, now VOXporter puts back the modified code to the clipboard
  • Added option to remove ~ONLYEARLY pragmas

Installer and documentation

  • We have added a new commandline option to the installer that allows you to suppress uninstalling a previous version
  • The installer now lists all found instances of VS 2017 and VS 2019, including the Visual Studio Buildtools, so you can choose to install in a particular instance of these versions of Visual Studio or simply in all instances.
  • We have added several documentation topics describing the installer/uninstaller command line options and the build process inside VS
  • We have added documentation topics about catching errors in startup code and on some of the "special things" that the compiler does to your code.

The readme below contains a list of all the changes so far
A new build including these changes will be released in the next days (after extensive internal testing)

XSharp Bandol 2.3b What's new)
Popular 225.29 KB

Today we have released a new installer for XSharp Bandol 2.3 to our FOX subscribers.

The complete readme with the description of the changes can be found here