The compiler no longer supports "Bring Your Own Runtime". If you want to compile in the VO or Vulcan dialect you will HAVE to include references to XSharp.Core and XSharp.RT. That does not mean that you can't link your program against the Vulcan runtime DLLs, but we no longer map our Xbase types to the types in these DLLs. So USUAL will not be mapped to Vulcan.__Usual. You can still use the types, functions and classes on these DLLs, but they will no longer be treated specially. If you want to call a function from the Vulcan Runtime yuou will have to use the syntax for static methods
-
GLOBAL USING
+
GLOBAL USING
We have added file wide NAMESPACE support
We have added support for the RECORD modifier for classes and structures
We have added a new __XSHARP3__ define which is always true, so you can conditional compile differences between XSharp 3 and a previous version
-
We have added code to check for the new [FoxArrayResultAttribute] that marks VFP functions which may create an array as a result (such as AMembers(), APrinters() and AUsed()). When the function is called with an undeclared variable then a new private variable is created for the result. (#1903)
+
We have added code to check for the new [FoxArrayResultAttribute] that marks VFP functions which may create an array as a result (such as AMembers(), APrinters() and AUsed()). When the function is called with an undeclared variable then a new private variable is created for the result. (#1903)
Bug Fixes
-
Fixed overload resolution when a Clipper calling convention function is called with a single NULL_OBJECT argument (#1782, #1016)
-
Changed the UDC for the RECALL command, because FoxPro temporarily switches of the SetDeleted() setting during the command (#1838)
-
Prevented an assertion error when compiling in debug mode for functions with the NeedsAccessToLocal attribute and a VOID return type (#1870)
-
Fixed a "Type Expected" compiler error in the VO dialect when declaring a CLIPPER method with no arguments and no explicit return type (#1907)
-
Suppressed a false ambiguity warning when a member has two overloads where one is parameterless and the other uses the Clipper calling convention; the compiler now silently chooses the parameter-less overload
-
Fixed an issue with cref attributes that are read from include files
+
Suppressed a false ambiguity warning when a member has two overloads where one is parameterless and the other uses the Clipper calling convention; the compiler now silently chooses the parameter-less overload
+
Fixed an issue with cref attributes that are read from include files
+
Fixed overload resolution when a Clipper calling convention function is called with a single NULL_OBJECT argument (#1782, #1016)
+
Changed the UDC for the RECALL command, because FoxPro temporarily switches of the SetDeleted() setting during the command (#1838)
+
Prevented an assertion error when compiling in debug mode for functions with the NeedsAccessToLocal attribute and a VOID return type (#1870)
+
Fixed a "Type Expected" compiler error in the VO dialect when declaring a CLIPPER method with no arguments and no explicit return type (#1907)
-
Fixed an “Failed to emit module” error when the code contains an expression in the form of “UnnamedType.Property” or “UnnamedType.Method()” when the “allowdot” compiler option is enabled.
-
The range expression rule in the compiler ( a .. b) allowed both sides of the dots to be empty. This has been fixed. The compiler now supports “a .. b”, “a .. “ and “ .. b”
+
Fixed an “Failed to emit module” error when the code contains an expression in the form of “UnnamedType.Property” or “UnnamedType.Method()” when the “allowdot” compiler option is enabled.
+
The range expression rule in the compiler ( a .. b) allowed both sides of the dots to be empty. This has been fixed. The compiler now supports “a .. b”, “a .. “ and “ .. b”
Build SystemNew Features
-
The Build system now supports the new SDK style projects
-
We have added a task to generate source code for GLOBAL USING values declared in the project files.
-
The XAML files in the Rules subfolder of the MsBuild folder are no longer used and have been deleted. Also the references to these files in the .props and .targets files have been removed
-
The builds system no longer automarically picks up the include folder from your Vulcan installation
-
There are many changes in the .props and .targets files to support SDK style projects and .Net 10. One of these changes automatically sets dependency relations between files, such as between VOBinary files and the module that they belong to.
-
The response file for the last build is now written to the intermediate output folder of the project with the name <OutputFileName>.rsp. A copy of this file is also written to the temp folder under the name LastXSharpResponseFile.Rsp
+
The Build system now supports the new SDK style projects
+
We have added a task to generate source code for GLOBAL USING values declared in the project files.
+
The XAML files in the Rules subfolder of the MsBuild folder are no longer used and have been deleted. Also the references to these files in the .props and .targets files have been removed
+
The builds system no longer automarically picks up the include folder from your Vulcan installation
+
There are many changes in the .props and .targets files to support SDK style projects and .Net 10. One of these changes automatically sets dependency relations between files, such as between VOBinary files and the module that they belong to.
+
The response file for the last build is now written to the intermediate output folder of the project with the name <OutputFileName>.rsp. A copy of this file is also written to the temp folder under the name LastXSharpResponseFile.Rsp
Bug Fixes
-
The Build task to compile native resources now checks the rc and include files for Byte Order Marks (BOM). When it finds such a BOM then it generates a warning
-
Warning numbers for the Native Resource generation task now start with XS9xxx and no longer with MSB…
-
For SDK projects File Foo.xh is now by default depending on Foo.prg when they both appear in the same folder
-
Fixed an error reported by Stefan Hirsch, was caused by automatically adding an OSPlatformAttribute to the output assemblies
-
Fixed a NuGet error about listing “win-x86” as runtime identifier for Old style projects with package references (#1801)
+
The Build task to compile native resources now checks the rc and include files for Byte Order Marks (BOM). When it finds such a BOM then it generates a warning
+
Warning numbers for the Native Resource generation task now start with XS9xxx and no longer with MSB…
+
For SDK projects File Foo.xh is now by default depending on Foo.prg when they both appear in the same folder
+
Fixed an error reported by Stefan Hirsch, was caused by automatically adding an OSPlatformAttribute to the output assemblies
+
Fixed a NuGet error about listing “win-x86” as runtime identifier for Old style projects with package references (#1801)
-
+
RuntimeThe signature for several functions and methods in the XSharp Runtime has been changed. We have used the new IN keyword for many that use parameters defined AS USUAL.
@@ -71,90 +71,90 @@
The NuGet packages for the runtime contain XML documentation for English and Chinese.New Features
-
We are now including .Net 8 versions of most of our runtime DLLs.
+
We are now including .Net 8 versions of most of our runtime DLLs.
-
The Runtime is now delivered in both DLL format as well as Nuget Packages. See the separate topic about the Runtime in this help file for a description of these packages and DLLs
-
The record number in RDD operations is now a DWORD and no longer a LONG. The maximum record number in a DBF file is now 2^32 - 1
-
We have added implicit conversion operators from USUAL to nullable value types(#1748, #1807)
-
Late bound code now gives precedence to the NEW method over a method defined in the parent class (#1286)
+
The Runtime is now delivered in both DLL format as well as Nuget Packages. See the separate topic about the Runtime in this help file for a description of these packages and DLLs
+
The record number in RDD operations is now a DWORD and no longer a LONG. The maximum record number in a DBF file is now 2^32 - 1
+
Late bound code now gives precedence to the NEW method over a method defined in the parent class (#1286)
+
We have added implicit conversion operators from USUAL to nullable value types(#1748, #1807)
Bug Fixes
-
Updated documentation for the Mb..() functions (#1124)
-
Removed duplicate MAKELANGID() and MAKELCID() functions from the Win32APILibrary; they were already defined in another location (#1124)
-
Added dummy stub implementations for Nation Functions in XSharp.VO (#1124)
+
Updated documentation for the Mb..() functions (#1124)
+
Removed duplicate MAKELANGID() and MAKELCID() functions from the Win32APILibrary; they were already defined in another location (#1124)
+
Added dummy stub implementations for Nation Functions in XSharp.VO (#1124)
-
Fix a problem with the DBF Header locking for FoxPro tables with autonumber fields (#1829)
-
Fixed potential issues with Null_date returned from OpenADS for the Last Update date in a DBF
-
Fixed an issue in the Macrocompiler where fields and variables passed to a function with IN parameter would be updated. (#1933)
-
Fix a problem with the DBF cache when the same table is opened in 2 different workareas with a file name that only differs in case (#1828)
-
Fixed an issue in the Macrocompiler for .Net 8
+
Fixed potential issues with Null_date returned from OpenADS for the Last Update date in a DBF
+
Fixed an issue in the Macrocompiler for .Net 8
+
Fix a problem with the DBF cache when the same table is opened in 2 different workareas with a file name that only differs in case (#1828)
+
Fix a problem with the DBF Header locking for FoxPro tables with autonumber fields (#1829)
+
Fixed an issue in the Macrocompiler where fields and variables passed to a function with IN parameter would be updated. (#1933)
-
Fixed an issue where assigning to a hidden field or property was incorrectly allowed. Added NoIVarGetSelf() and NoIVarPutSelf() methods (#1491)
-
Fixed a macro compiler issue with certain method calls (#1860)
+
Fixed an issue where assigning to a hidden field or property was incorrectly allowed. Added NoIVarGetSelf() and NoIVarPutSelf() methods (#1491)
+
Fixed a macro compiler issue with certain method calls (#1860)
-
Fixed a memo-related state issue (#1869)
-
Fixed an issue with Memo functions
-
Fixed ADel() to correctly remove the element at the specified position
-
Added the Transform @N format function
+
Fixed an issue with Memo functions
+
Fixed ADel() to correctly remove the element at the specified position
+
Added the Transform @N format function
+
Fixed a memo-related state issue (#1869)
XPP Dialect
-
XPP Dialect: Added NLS_ defines and initial implementation for the SetLocale() function
-
XPP Dialect: Fixed a late binding issue (#1836)
+
XPP Dialect: Added NLS_ defines and initial implementation for the SetLocale() function
+
XPP Dialect: Fixed a late binding issue (#1836)
New features the FoxPro dialect.
-
Added an implementation of the AUsed() function (VFP)
-
Implemented ISPEN() (returns FALSE — no Tablet support) and IMESTATUS() (returns 0 — no IME support) (#1924)
-
Implemented PROW() and PCOL() printer position functions (#1925)
+
Added an implementation of the AUsed() function (VFP)
+
Implemented ISPEN() (returns FALSE — no Tablet support) and IMESTATUS() (returns 0 — no IME support) (#1924)
+
Implemented PROW() and PCOL() printer position functions (#1925)
-
Implemented TXNLEVEL() which returns the current transaction nesting level (#1927)
-
Implemented ISMEMOFETCHED(); for local DBF data, memo fields are always considered fetched (#1931)
-
Fixed CREATE TABLE when the table name includes a path; the alias is now derived from the file name without the directory part (#1938)
+
Implemented TXNLEVEL() which returns the current transaction nesting level (#1927)
+
Implemented ISMEMOFETCHED(); for local DBF data, memo fields are always considered fetched (#1931)
+
Fixed CREATE TABLE when the table name includes a path; the alias is now derived from the file name without the directory part (#1938)
-
The DBFVFP driver now allows index expressions that contain Trim(), Ltrim(), RTrim() etc. (#1837)
-
The implementation of several UI related functions, such as MessageBox(), have been moved from XSharp.VFP to XSharp.VFP.UI. These functions will now output to the console window when XSharp.VFP.UI cannot be found.
-
The XSharp.VFP assembly now contains function definitions for all functions from VFP, even the ones that exist in XSharp.Core and XSharp.RT. These functions will delegate the work to the implementation in the other assemblies.
-
Fixed VARTYPE() throwing exceptions for undeclared variables (#1882)
+
The implementation of several UI related functions, such as MessageBox(), have been moved from XSharp.VFP to XSharp.VFP.UI. These functions will now output to the console window when XSharp.VFP.UI cannot be found.
+
The XSharp.VFP assembly now contains function definitions for all functions from VFP, even the ones that exist in XSharp.Core and XSharp.RT. These functions will delegate the work to the implementation in the other assemblies.
+
The DBFVFP driver now allows index expressions that contain Trim(), Ltrim(), RTrim() etc. (#1837)
+
Fixed VARTYPE() throwing exceptions for undeclared variables (#1882)
-
Added SET POINT and SET SEPARATOR support (#1867, #1883)
-
Fixed SET DEFAULT TO command paths and working directory handling (#1884)
-
Implemented Lock(), RLock(), FLock() and UnLock() for SQLRDD (#1885)
-
VFP GUI provider now loads dynamically via AssemblyHelper (#1888)
-
Fixed RELEASE ALL LIKE when quoted patterns are passed in the skeleton (#1889)
-
Added missing parameterless and IntPtr overloads for F* file functions (#1890)
-
Fixed SET MEMOWIDTH, SYSMETRIC and COPY TO ARRAY (#1891)
-
Refined SET('DEFAULT') and SET('DIRECTORY') (#1892)
-
Implemented FCHSIZE() and VFP-compatible BINTOC() / CTOBIN() (#1893)
-
Fixed SYSMETRIC() calls, SET MEMOWIDTH typo, and SET DEFAULT/DIRECTORY initialization issues at startup (#1894)
-
Fixed MemoHelpers.MAX_WIDTH to be a dynamic property (#1895)
-
Implemented GETDIR(), GETFILE() and GETPICT() dialog functions (#1896)
-
Fixed MESSAGEBOX() timeout issue and implemented dynamic parameter handling (#1897)
-
Implemented DIR/DIRECTORY command with output parity to VFP (#1900)
-
Added [FoxArrayInputParameterAttribute] and an array result stack to support functions such as AMembers(), APrinters() and AUsed()
-
Implemented SET DEVICE TO FILE redirection (#1901)
+
Added [FoxArrayInputParameterAttribute] and an array result stack to support functions such as AMembers(), APrinters() and AUsed()
+
Added SET POINT and SET SEPARATOR support (#1867, #1883)
+
Fixed SET DEFAULT TO command paths and working directory handling (#1884)
+
Implemented Lock(), RLock(), FLock() and UnLock() for SQLRDD (#1885)
+
VFP GUI provider now loads dynamically via AssemblyHelper (#1888)
+
Fixed RELEASE ALL LIKE when quoted patterns are passed in the skeleton (#1889)
+
Added missing parameterless and IntPtr overloads for F* file functions (#1890)
+
Fixed SET MEMOWIDTH, SYSMETRIC and COPY TO ARRAY (#1891)
+
Refined SET('DEFAULT') and SET('DIRECTORY') (#1892)
+
Implemented FCHSIZE() and VFP-compatible BINTOC() / CTOBIN() (#1893)
+
Fixed SYSMETRIC() calls, SET MEMOWIDTH typo, and SET DEFAULT/DIRECTORY initialization issues at startup (#1894)
+
Fixed MemoHelpers.MAX_WIDTH to be a dynamic property (#1895)
+
Implemented GETDIR(), GETFILE() and GETPICT() dialog functions (#1896)
+
Fixed MESSAGEBOX() timeout issue and implemented dynamic parameter handling (#1897)
+
Implemented DIR/DIRECTORY command with output parity to VFP (#1900)
+
Implemented SET DEVICE TO FILE redirection (#1901)
-
Adjusted AMembers() and APrinters() to use the new array result mechanism
-
Fixed FDate() to accept a filename parameter and return the actual last-write date of the file (#1856)
-
Fixed FTime() to accept a filename parameter and return the actual last-write time of the file (#1856)
-
Fixed FSize() VFP compatibility: when SET COMPATIBLE is ON and no work area is specified, it returns the size of the named file; when the filename has no extension, a .DBF extension is assumed (#1856)
-
Added new file functions FName() (returns the filename from a path) and FAttrib() (returns file attributes) (#1856)
-
Added the [NeedsAccessToLocals] attribute to VFP Macro Wrapper functions to preserve correct macro evaluation behavior (#1858)
-
Implemented NORMALIZE() and DISPLAYPATH() functions (#1880)
-
Added support for the SET BELL TO command (the command is accepted and ignored, matching VFP behavior) (#1874)
-
Fixed RELEASE ALL LIKE when a quoted pattern is used in the skeleton (#1870)
-
Fixed Set.Compatible default return value: it was incorrectly returning string "OFF" instead of LOGIC FALSE
-
Added Set.Compatible handler in the Set() function, supporting both string values ("ON", "OFF", "DB4") and LOGIC values
+
Adjusted AMembers() and APrinters() to use the new array result mechanism
+
Fixed Set.Compatible default return value: it was incorrectly returning string "OFF" instead of LOGIC FALSE
+
Added Set.Compatible handler in the Set() function, supporting both string values ("ON", "OFF", "DB4") and LOGIC values
+
Fixed FDate() to accept a filename parameter and return the actual last-write date of the file (#1856)
+
Fixed FTime() to accept a filename parameter and return the actual last-write time of the file (#1856)
+
Fixed FSize() VFP compatibility: when SET COMPATIBLE is ON and no work area is specified, it returns the size of the named file; when the filename has no extension, a .DBF extension is assumed (#1856)
+
Added new file functions FName() (returns the filename from a path) and FAttrib() (returns file attributes) (#1856)
+
Added the [NeedsAccessToLocals] attribute to VFP Macro Wrapper functions to preserve correct macro evaluation behavior (#1858)
+
Fixed RELEASE ALL LIKE when a quoted pattern is used in the skeleton (#1870)
+
Added support for the SET BELL TO command (the command is accepted and ignored, matching VFP behavior) (#1874)
+
Implemented NORMALIZE() and DISPLAYPATH() functions (#1880)
Visual Studio IntegrationWe are now fully supporting Visual Studio 2026
@@ -162,90 +162,90 @@
We are still supporting Visual Studio 2019 but not all of the new features will be implemented for this version of VS.New Features
-
We are now supporting SDK style projects. To do so many changes were made all over the Visual Studio support code
+
We are now supporting SDK style projects. To do so many changes were made all over the Visual Studio support code
-
We have added an option to edit a project file without unloading it. Saving the changes will trigger reloading of the project (#1817)
-
The language service now respects the new commands, such as GLOBAL USING, NAMESPACE, RECORD etc.
-
Added Publish and Pack commands to the Build menu for SDK-style X# projects; a dialog allows configuring the target OS, self-contained deployment, and single-file output (#1939)
-
Added support for the VS Document Outline Window
+
The language service now respects the new commands, such as GLOBAL USING, NAMESPACE, RECORD etc.
+
Added support for the VS Document Outline Window
+
We have added an option to edit a project file without unloading it. Saving the changes will trigger reloading of the project (#1817)
+
Added Publish and Pack commands to the Build menu for SDK-style X# projects; a dialog allows configuring the target OS, self-contained deployment, and single-file output (#1939)
-
The Project Property windows for SDK projects are now in WPF and support several new properties and have several new pages.
-
We have added new templates for SDK style projects
+
The Project Property windows for SDK projects are now in WPF and support several new properties and have several new pages.
+
We have added new templates for SDK style projects
-
Moved logging and most VS event handlers to a new Support DLL. Fixed an issue in the IDE BuildLogger (#1802)
+
Moved logging and most VS event handlers to a new Support DLL. Fixed an issue in the IDE BuildLogger (#1802)
Bug Fixes
-
The Build/Cancel button was not visible when a X# project was selected and another project was being built. (#1799)
+
The Build/Cancel button was not visible when a X# project was selected and another project was being built. (#1799)
-
Fixed an error “the type initializer for 'XSharp.Project.ErrorListManager' threw an exception” when loading projects in VS2026 (#1800)
-
The include-files node could sometimes show files, even after the /nostddef compiler option was selected on the project properties page. We recommend a touch of all the files in a project to completely refresh (clear) the include list. (#1805)
+
Fixed an error “the type initializer for 'XSharp.Project.ErrorListManager' threw an exception” when loading projects in VS2026 (#1800)
+
The include-files node could sometimes show files, even after the /nostddef compiler option was selected on the project properties page. We recommend a touch of all the files in a project to completely refresh (clear) the include list. (#1805)
-
Sometimes VS would freeze when adding an assembly reference. This has been fixed (#1814)
-
Fixed an issue with duplicate reference names in the Solution Explorer window (#1816)
-
We no longer add ProjectGuid properties to SDK projects. Guids are also removed from project references inside SDK projects.(#1819)
+
Sometimes VS would freeze when adding an assembly reference. This has been fixed (#1814)
+
Fixed an issue with duplicate reference names in the Solution Explorer window (#1816)
+
We no longer add ProjectGuid properties to SDK projects. Guids are also removed from project references inside SDK projects.(#1819)
-
The IDE has been prepared for a menu option to convert a traditional project to the new SDK project file format.( #1823). The menu option is not working yet.
-
Fixed a crash when Visual Studio was opened directly with a solution file (#1918)
+
The IDE has been prepared for a menu option to convert a traditional project to the new SDK project file format.( #1823). The menu option is not working yet.
+
Fixed a crash when Visual Studio was opened directly with a solution file (#1918)
-
Replaced bitmap-backed command icons and project hierarchy icons with Visual Studio ImageMonikers (#1921)
-
Fixed a deadlock when opening a solution from the command line (#1922)
-
Fixed incorrect conditional compilation block highlighting: the language service now uses the correct preprocessor defines from the active project configuration (#1923)
-
Fixed an issue with Project References for SDK projects where these references were not shown in the "Add Reference" dialog (#1928)
+
Replaced bitmap-backed command icons and project hierarchy icons with Visual Studio ImageMonikers (#1921)
+
Fixed a deadlock when opening a solution from the command line (#1922)
+
Fixed incorrect conditional compilation block highlighting: the language service now uses the correct preprocessor defines from the active project configuration (#1923)
+
Fixed an issue with Project References for SDK projects where these references were not shown in the "Add Reference" dialog (#1928)
-
Fixed an issue with Project References for SDK projects where these references were not shown in the Project Dependencies page of the Solution Properties window ((#1929)
-
Fixed local functions not appearing correctly in the Navigation Bar and Document Outline window (#1932)
+
Fixed an issue with Project References for SDK projects where these references were not shown in the Project Dependencies page of the Solution Properties window ((#1929)
+
Fixed local functions not appearing correctly in the Navigation Bar and Document Outline window (#1932)
-
Fixed the navigation bar not displaying all entities in files with nested classes, and not following the cursor when it moves past the last declared entity (#1934)
+
Fixed the navigation bar not displaying all entities in files with nested classes, and not following the cursor when it moves past the last declared entity (#1934)
-
The Output window in Visual Studio was not always showing progress. This has been fixed
-
The assemblies that are automatically added for SDK projects now show more properties inside the property windows.
-
Improved load speed for SDK projects..
+
The Output window in Visual Studio was not always showing progress. This has been fixed
+
The assemblies that are automatically added for SDK projects now show more properties inside the property windows.
+
Improved load speed for SDK projects..
-
Fixed an issue where the first Build inside VS with a solution that has X# projects would seem to freeze VS. After pressing Cancel a second Build (or Rebuild) would work.
-
The “ToggleComment” command now takes the comment status of the first line of a block of lines to decide if the block needs to be commented or uncommented. When a line inside a block is already commented then it may end up being double commented after a comment operation. And when a block containing a double commented line is uncommented, than that line will become single commented afterwards.
-
When a project has multiple project references to the same external project, then problems could occur. This has been fixed. The second reference gets (silently) ignored.
-
The document formatter now excludes lines that are part of a TEXT ... ENDTEXT
+
Fixed an issue where the first Build inside VS with a solution that has X# projects would seem to freeze VS. After pressing Cancel a second Build (or Rebuild) would work.
+
The “ToggleComment” command now takes the comment status of the first line of a block of lines to decide if the block needs to be commented or uncommented. When a line inside a block is already commented then it may end up being double commented after a comment operation. And when a block containing a double commented line is uncommented, than that line will become single commented afterwards.
+
When a project has multiple project references to the same external project, then problems could occur. This has been fixed. The second reference gets (silently) ignored.
+
The document formatter now excludes lines that are part of a TEXT ... ENDTEXT
-
Fixed issue where the project system was incorrectly responding to the PackageReferences project dependency. This caused the first Build in Visual Studio to freeze.(#1802)
-
ProjectReferences in SDK projects no longer store the name, guid etc.
+
ProjectReferences in SDK projects no longer store the name, guid etc.
+
Fixed issue where the project system was incorrectly responding to the PackageReferences project dependency. This caused the first Build in Visual Studio to freeze.(#1802)
DebuggerNew Features
-
The workarea window now also shows index information and the table structure
+
The workarea window now also shows index information and the table structure
Bug Fixes
-
Fixed an issue where the debugger was not correctly displaying Symbol values inside Usuals (#1804)
-
Fixed an issue in the debugger where USUAL values were not shown properly formatted (#1809)
-
Fixed an issue in the debugger where breakpoint conditions and watch expressions were not working (#1810)
+
Fixed an issue where the debugger was not correctly displaying Symbol values inside Usuals (#1804)
+
Fixed an issue in the debugger where USUAL values were not shown properly formatted (#1809)
+
Fixed an issue in the debugger where breakpoint conditions and watch expressions were not working (#1810)
VOSDKNew Features
-
Methods named FIELDGET and FIELDPUT (in uppercase) are now named FieldGet and FieldPut to be compatible with the case of other methods.
+
Methods named FIELDGET and FIELDPUT (in uppercase) are now named FieldGet and FieldPut to be compatible with the case of other methods.
Typed VOSDKNew Features
-
The menu and toolbar class now internally use the MenuStrip and ToolStrip classes from Windows Forms because the classes that were used before are no longer supported in newer versions of .Net.
+
The menu and toolbar class now internally use the MenuStrip and ToolStrip classes from Windows Forms because the classes that were used before are no longer supported in newer versions of .Net.
Bug Fixes
-
The Typed AnyCPU GUI Classes no longer use the MainMenu and ToolBar classes, but the MenuStrip and ToolStrip classes.
+
The Typed AnyCPU GUI Classes no longer use the MainMenu and ToolBar classes, but the MenuStrip and ToolStrip classes.