Ken's dBASE Page

Updated: February 9, 2019

Number of unique hits:

Note: if you are looking for technical support for dBASE™, please visit:

  • The dBase, LLC website (dBase, LLC [dBASE pages]) and use the "Support" option there. dBase, LLC provides free newsgroups, and also has email support through the technical support department. The links on the dBASE site will work for a starter -- using your web browser, it may be a good idea to use the newsgroup web NTTP address (below) with a newsgroup reader such as Mozilla's free Thunderbird software.
         dBASE Newsgroups (news://
    (Port numbers, in case your news reader requires them: NNTP = 119, SMTP = 25)

  • George Burt's newsgroups at:
    are still going strong [warning: If using Netscape or Firefox, there may be a problem connecting to these newsgroups from the link given.] There are more newsgroups than just the one (watercooler) -- start with dbase.watercooler, and then subscribe to the others using whatever your newsgroup software is. This has passed to another administrator (Ronnie MacGregor).

Please do not email the owner of this or any other website requesting technical support, unless they have specifically given you permission to do so. (See also 'News' below ...)

The icons being used on this page refer to which version of dBASE:

for Visual dBASE 5.5, 5.6 and 5.7
for Visual dBASE 7.0, 7.01 and 7.5
for dB2K (image by Gary White, used with permission)
for dBASE™ PLUS 2.5, 2.6, 2.7
for dBASE™ PLUS 2.8
for dBASE™ PLUS 8
for dBASE™ PLUS 9
for dBASE™ PLUS 10
for dBASE™ PLUS 11
for dBASE™ PLUS 12
dBASE™, dBASE™ Plus are trademarked by dBase, LLC


April 20, 2018

The dUFLP has been updated to version (see dUFLP link in menu). See the file for details.

May 22, 2018

The folk at dBase, LLC have released dBASE™ Plus 12 with the addition of some new objects, including:

  • DateTimePicker -- a calendaring class
  • RichEdit and RichText -- classes for working with Rich Text Format (RTF) data
  • JSON -- an object designed to read and write data in JSON format
There are some grid enhancements as well as some updates to the appearance of the IDE, and more. For further details visit: dBASE™ Plus 12 -- Read Me First FAQ.

I hope to announce soon a new release of The dBASE Book Plus, which will document the changes to the software with some fairly complex and involved examples for some of the new controls. Keep an eye peeled here and in the newsgroups for details.

Older news has been trimmed out ...

The dBASE Users' Function Library Project (dUFLP)

dUFLP for dBASE PLUS, version 12A

The file is (dated February 9, 2019). This file is approximately 4.3MB in size. As always see the WHATS.NEW file for details on what has been changed, and use the form Library.wfm to find items you may be looking for. Everything here should work in dBASE™ Plus 9 through 12, the file has been renamed. There is little, if anything, that won't work in versions of dBASE™ from 9 on to the current.

Note: An older version of the dUFLP for versions of dBASE™ prior to dBASE PLUS™ 8 is available here for a while, but it will eventually go away ... (dated June 20, 2014).

Important: If you are developing in dBASE™ Plus 2.8 and dBASE™ Plus 8, dBASE™ Plus 9, dBASE™ Plus 10 or dBASE™ Plus 11 (or any combination of these), you should have different folders for the dUFLP, one for dBASE™ Plus 2.8, one for dBASE™ Plus 9, etc. The reason is that once code is compiled in dBASE™ Plus 8, or dBASE™ Plus 9, the compiled version is not readable by dBASE™ Plus 2.8, and vice versa. It can be very irritating to run some code and suddenly find it isn't working because you had compiled something in the dUFLP under a different version of the software. Typical error is a warning about bytecode problems ...

Putting Your Code in the dUFLP Folder? I have seen a couple of developers post in the newsgroups that some code was available in the dUFLP when actually it wasn't. This is because they copied something from the newsgroups (or created something or ...) and placed it in the dUFLP folder. This is really a bad idea. With Source Code Aliases, you can just create your own custom library that gets used side-by-side with the dUFLP by putting that code in another folder, and setting up the Source Code Alias. Please do this to avoid confusion of what is in the library and what is not -- thanks!

New to the dUFLP? (This information is also in README.TXT in the library)
If you are new to the dUFLP, you need to know some basics, such as how to set things up, and get around in it. The following are the basics:

Create a folder on your hard drive, such as:


Run the file you downloaded (with a filename such as:, and extract the contents to the folder above.

Once you have done this, start dBASE and use the Navigator to point to that folder (use the "Look in:" combobox at the top of the Navigator).

NEW SETUP OPTION: Click on the "Programs" tab, and double-click on this file to create the Source Alias for the dUFLP:


(This program does the following:

  • Runs 'SetupSourceAlias.prg',
  • Copies the .H files for the dUFLP (and BDE) to the appropriate INCLUDE folder (depending on the version of dBASE),
  • Runs ComponentPaletteUpdate.prg)

OR, you can do this the hard way:


Once you have done that, after you start dBASE again, you may want to run the program (double-click on it):


so that when you decide to use some of the visual controls that are contained here, they will appear on the Component Palette of dBASE properly. (Note that this will not harm anything in your dBASE setup, it simply adds some information to a special table that is used by dBASE to know what icons to display for controls, and what tabs to place them on.)

Finally, to get a sense of what is contained in this library, you should change the tab in the Navigator to "Forms", and find the one called:


Double-click this file. This will run a form that shows you what is in the library, allows you to search the library, and even open the source code files in the Source Code Editor of dBASE.

dUFLP for Visual dBASE 5.5/5.6: LIW55B.ZIP (dated March 2, 1997). This is freeware code, with the only caveat being that the authors all request that you include the documentation that credits them. There will be no further updates to this version of the library. All focus as far as the dUFLP goes is on the 32-bit version (just like with the product itself ...).

SEQVALUE.CC: Romain sent me this at my request, as it is not in the dUFLP for 5.x. The file is SEQVALUE.CC used for handling autoincrementing fields in Visual dBASE 5.5 and later. This should work "as is", it's just the .CC itself. Download -- read the comments at the beginning of this custom class to understand how to use it.

Sample Code

NOTE: Some of this code is pretty old, and there are no guarantees that it will work properly in the current versions of dBASE Plus (8, 9, 10 ...). If you are interested, please feel free to download and examine, try it ... if it works, great. But consider this a disclaimer for all of it ...

Working with TeeChart and dBASE PLUS Updated Jan. 25, 2006

The file here: is an HTML document with a bunch of screen shots and David Stone's article on working with TeeChart in dBASE PLUS. Hopefully there is enough information here to help you get started working with this flexible, powerful, and very confusing, ActiveX control.

Various Issues

Windows Vista™

Issues with Windows Vista™ and Windows 7™ are addressed here: dBase, LLC's Support Site

Data Execution Prevention (DEP) and dBASE PLUS

It seems that some newer machines and XP Professional have settings that affect this. The difficulty appears to be that if it is set to on in both the BIOS and the Operating System, dBASE PLUS no longer runs (however, it's not just dBASE -- apparently Microsoft Office 2003 also has the same problem ...).

Rich Muller posted on the dBASE newsgroups after testing: "You can add PLUS.exe and PLUSrun.exe as an exception in the configuration. You can also turn off DEP by setting a switch in the Boot.ini. Also application compatibility toolkit should help.;en-us;875352"

BDE "Insufficient disk space" Error Fix

The BDE in all releases earlier than (the version that ships with dBASE PLUS 2x and later), has an error that can occur if you or your users have free disk space on the hard drive that is an exact increment of 4 gigabytes (i.e., 4, 8, 12, 16 ...). The file includes the .DLL file that solves this issue (it's a "patch" for the BDE), and also a small program that will load it. Details are in the file "BDEFix.prg" contained in the .zip file. Note that if you have dBASE PLUS 2.5 or later, this should not be an issue, and you do not need this file.

Ken's Message Board 2.2

This is the second complete version of Ken's Message Board, nearly a year after the first (life's been crazy) -- with a few major changes in 2003. Updates include: encoding username when passing it by a link, which resolves issues with spaces in the username; dynamic external objects; ability to specify whether to allow profanity (and to specify what words are considered profane); ability to keep a user from posting destructive scripts as part of the text of a message; minor cleanup here and there. If you have an existing version, you will will want to run all three of the MAKE programs. After downloading it, unzipping to a folder, check out "readme.htm" for details on how to use it, set it up, etc. -- June 25, 2003.

A Wrapper for the MessageServer

Updates/wrapper for the MessageServer application provided as sample code in Visual dBASE 7.5 -- this gives a bit of functionality to the sample application, including allowing you to set your own table, and create fieldlists, or templates (mail-merge messages). -- February 15, 2000. Check the README.TXT file contained in the .ZIP for details ... and the header code in the .CC for more details.

A Message Server using FUNCky 6.0 and Visual dBASE 7.5

This is similar to above, but it uses the FUNCky 6.0 (this is what is on your CD for dBASE -- versions 7.5 through dBASE PLUS) for Visual dBASE provided by Dirk Lesko -- note that you MUST have FUNCky 6.0 for this to work. February 16, 2000. Check the README.HTM file contained in the .ZIP for details ... and the header code in the kmFUNCkyMailServerWrapper.prg for more details. (This should work with later versions of dBASE ...)

PLEASE NOTE: The website for FUNCky has disappeared, I assume this means little or no support, and I cannot guarantee that this code will work in current versions of dBASE Plus (8, 9, 10 ...). There are other solutions available, and with dBASE Plus 9 and later, dBASE ships with some of the Catalyst Socket Tools activex controls, which will provide some of what FUNCky did.

Vesper 9.03

This version of Vesper is even more of an overhaul than the previous versions. This one was modified based on needs of the current Vesper, some items were removed (subscription data, for example, as the heralds are putting the monthly minutes up on the web now), and others were added (heraldic certifications ...). This uses a few features of dBASE PLUS (mostly new form properties), and also does some limited web stuff (the website used by the heralds is run off a Linux server, and hence the software only generates a few static web pages, not a fully interactive web-based package). See the README.TXT file for, among other things, a description of the folder structure needed for the application. All source code is documented as usual. Some minor bug fixes from earlier versions have been added. Last updated: March 14, 2006

Project Explorer Updates, dBASE PLUS 2.8

The developers at dBASE were working on fixes for the Project Explorer when the decision to focus exclusively on dBASE PLUS 8 came down the pipeline.

I was given some of these changes and updates (included in dBASE PLUS 8, but not in dBASE PLUS 2.8) and have been granted permission by the CEO (Mike Rozlog) to make them available to the dBASE community. Note that these should only be applied in dBASE PLUS 2.8. This means that you should not make these changes for dBASE Plus 2.7 (or earlier), or for dBASE Plus 8.

To use these, download the .ZIP file, read the information in "Changes.rtf", and unzip the files to the appropriate locations.

Project Explorer for dBASE PLUS 2.8 Updates (April, 2013)

Other Sites

This is a list of websites you might find useful, they all deal with dBASE in some fashion or another. If you have a site that you feel belongs here, please click on the "Contact Ken" link at the top of the page, and let me know ...

dBASE Advisor Articles by Ken Mayer

A set of articles written by Ken Mayer during the time the magazine The dBASE Advisor existed. If nothing else it is sort of a blast from the past, showing where we've come from to the current versions of dBASE. The articles are just the ones I wrote, I don't have permission to publish the others (and frankly probably not enough space on my web server for everything). These are all PDF files:

  • January, 1995, dBASE 5.0 for DOS, "Create Pick Lists the 5.0 Way
  • March, 1995, dBASE 5.0 for Windows, Mover Dialogs in dBASE 5.0 for Windows
  • July, 1995, dBASE IV/5.0 for Windows, Hands-On Migration: Bringing a dBASE IV App to Windows
  • September, 1995, Visual dBASE 5.5, Introducing: Multi-Page Forms
  • November, 1995, dBASE IV, 5.0 for DOS, dBASE 5.0 for Windows, Print dBASE Data in Columns
  • January, 1996, dBASE IV, Create a Reusable Dialog
  • January, 1996, Visual dBASE 5.5, Custom Forms in Visual dBASE
  • May, 1996, dBASE 5.0 for DOS, Code Your Own Generic Dialog

Ken's dBCon Article from 2004 on Web Applications

In 2004 the last dBASE Conference in the North American continent was held, in Montreal. This paper on Web Applications is also in dBulletin, but I have updated some of it a tiny amount (links, etc.)

I have provided it here in case you may find it useful: Intro to Web Apps.

Michael Nuwer's Tutorials:

These are the tutorials that I started, but Michael really polished and enhanced to make them more useful:

     dBASE Online Training (the main page)

It should be noted that Michael's tutorials include one on Web Development with dBASE as well as the previous version of the dBASE tutorial in the menu here.

dBulletin -- dBASE Newsletter With Lots of Code Samples:

This is available from various websites around the World:


It should be noted that the newsletter hit its final issue (#21) due to a lack of articles being written, and because the main editor (J.P. Martel) just doesn't really have the time to put into it anymore.

Ronnie MacGregor's dBASE Page

Ronnie has some utilities that are worth checking out: If you've never worked with Ronnie, he's extremely helpful and giving, but he's also very busy ... so if he doesn't answer immediately, don't give up ...

Marc van den Berghen

Mark has some interesting code available, some for free, some not: VdB-Logic

dBASE Web Application Resources

David Ball has posted a website with resources to help you work with dBASE on the web at:
Please note, this address has changed ...