jBASE for NT and Windows 9x now ships with a Visual Basic OLE Automation interface. This interface should be usable by other systems that understand OLE Automation Variables.
Because your original BASIC subroutines are compiled by jBASE into C functions by the jBASE compiler, they are available to any program that can call C functions. The subroutines are collected together - automatically of course - in .DLL files that can be located anywhere within your Windows system.
However, if you want to call them from systems that don't understand what a jBASE variable is you would have to convert the data types yourself before calling the subroutines. Obviously, this would quickly become a pain to maintain. Therefore the first development in the jBASE OBjEX product line was the VB Call Automation Interface. With one global declaration in your Visual BASIC (or other OLE aware system), you can now call any subroutine compiled by jBASE and pass to it any OLE Automation variable as a parameter. The jBASE Automation Interface will do the rest; your subroutine will be called with jBASE variables.
The subroutine does not know, or need to know, anything about who or what called it or what data type it was really passed. It carries out its assigned task and then does a RETURN as normal. If it has changed any of the variables it was passed, these changes will be reflected automatically in the calling program's OLE variables.
If you are wondering how efficient this is (and you should) you need to take a step backwards and think about how jBASE is implemented:
Hence, load times and response times are excellent and the use of jBASE subroutines does not introduce any noticeable overhead. In fact jBASE BASIC (jBC) is a lot more efficient than Visual BASIC. However, we now recommend jBASE OBjEX as the way to go to integrate your jBASE stuff with Windows properly.
![]()
Click on the
link
below to receive the calling interface for VB. This is a ZIP file which contains
the calling DLL and some example projects in Visual Basic. Please read the
README.TXT within the ZIP file before reporting any problems!.
Select jBASE 2.0/3.0 or jBASE 3.1
![]()
This is 32 bit OLE Type Library that allows you to use the jBASE jEDI interface to open files (rather than mess with SQL), declare Dynamic Arrays and use jBASE functions and statements within OLE aware systems such as Visual BASIC 6.
This will allow you to write code like this:
![]()
In other words, you can program in Pick BASIC (now called jBC), right within your Visual BASIC Project.
![]()
© 1999 jBASE Software, Inc. All rights reserved. All trademarks on this page are recognized.
Last update: June 2, 1999.