
               dBASE 5.0 Distribution Kit for Windows
               --------------------------------------

This file contains important information about the dBASE 5.0 Distribution 
Kit for Windows. This file is written for developers and users of 
applications created with dBASE for Windows. 

****************************************************************************
Please read this file very carefully. You can copy it, make all necessary 
changes to it, and then deliver it to your users. This file is an ASCII 
text file that is included on the Developer Disk of the dBASE 5.0 
Distribution Kit for Windows. After modifying the file using a text editor, 
such as Notepad, make sure you copy your final README.TXT onto your 
application disks so that users of your application can read your version 
of README.TXT. 
****************************************************************************


TABLE OF CONTENTS
-----------------
1.  Product Overview
2.  Configuration and System Requirements
3.  IDAPI Configuration Notes (IDAPI.CFG Settings)
4.  Creating an Application
5.  Distributing Your Application
6.  Using the Sample Programs
7.  Common Questions & Answers
8.  Supporting Products
9.  Files Authorized for Redistribution


1.  PRODUCT OVERVIEW
--------------------
The dBASE 5.0 Distribution Kit for Windows allows you to run an application 
written with dBASE for Windows on a system that does not have dBASE for 
Windows installed. You copy the Distribution Kit and distribute it along 
with your application to end users who then run it as a stand-alone 
application. The Distribution Kit excludes design and programming 
capabilities (SET DESIGN ON is disabled), and runs files that are written 
and compiled with dBASE for Windows. 

As an application developer, you do the following:
- Develop the program
- Design the data files
- Test the program and data files using both dBASE for Windows and the 
  dBASE 5.0 Distribution Kit for Windows
- Distribute the application to end users
- Provide technical support for your application to your users

The following is a list of the types of files you would distribute with 
your application:
- README.TXT
- Configuration files (DBWC.INI)
- Object-code files (.PRO, .WFO, .QBO, .MNO)
- Report and label files (.RPT, .RPC, .RPL)
- Data files (.DBF, .DBT, .MDX, .FNF, .BMP, .PCX, .WAV)
- Custom-control files (.CO, .VBX, .BFM)

The name of the executable file that runs your application program is 
DBWC.EXE and the initialization file is DBWC.INI. 

The dBASE 5.0 Distribution Kit consists of two types of disks: Deployment 
Disks and a Developer Disk. 

- The Deployment Disks install the files necessary to run your application 
  object code files. The installation program on the Deployment Disks 
  installs files by default to the \DBW_DIST directory. During 
  installation, however, you can choose to install to a different 
  directory. As a developer, you might choose to install the files in a 
  subdirectory of the dBASE home (installation) directory. For example, if 
  the home directory is \DBASEWIN, you might install the files in 
  \DBASEWIN\DBW_DIST.

- The Developer Disk consists of this README.TXT file and several sample 
  files. Copy the README.TXT file to the \DBW_DIST directory. Copy 
  the sample files to the \DBW_DIST\SAMPLES directory. See section 6, 
  "Using the Sample Programs" for information on running the samples.

If your application relies on the capabilities provided in Borland SQL 
Links for Windows, such as accessing an Oracle database server, each user 
who uses your application must purchase and install Borland SQL Links for 
Windows. Information about ordering SQL Links for Windows is in section 8, 
"Supporting Products."

The dBASE 5.0 Distribution Kit for Windows includes the files necessary to 
use drivers in Microsoft's 2.0 ODBC Driver Manager. See section 3 of this 
README.TXT file, "IDAPI Configuration Notes," for more information. 


2.  CONFIGURATION AND SYSTEM REQUIREMENTS
-----------------------------------------
System requirements for the dBASE 5.0 Distribution Kit for Windows:
  - DOS 3.1 or higher
  - Windows version 3.1
  - 6 MB RAM required, 8 MB recommended
  - 10 MB free disk space for installation

Supported Network Operating Systems:
   Netware 3.11, 3.12, 4.01
   Personal Netware (Novell DOS 7)
   Banyan Vines 5.5
   IBM LAN Server 3.0 *
   MS LAN Manager 2.2
   Lantastic 6.0
   Windows for Workgroups 3.11
   Windows NT 3.5

* For proper operation of the dBASE 5.0 Distribution Kit for Windows
  with LanServer 3.0, change the following parameters in the DOSLAN.INI 
  file on the workstation:
      NBS: 4K
      BBS: 5K

On a single machine, to access the same table concurrently using Sessions
or multiple instances of dBASE 5.0 Distribution Kit for Windows, 
DOS SHARE.EXE must be loaded before starting Windows.

See also section 3 of this README.TXT file, "IDAPI Configuration Notes."


3.  IDAPI CONFIGURATION NOTES (IDAPI.CFG SETTINGS)
--------------------------------------------------
The DBWC.INI file lets you specify a default IDAPI configuration file to 
use whenever dBASE is started. However, if another IDAPI-based product is 
already running when you start dBASE 5.0 Distribution Kit for Windows, 
dBASE uses the IDAPI configuration file that is already active. 

To edit the IDAPI configuration file, choose the IDAPI Configuration 
Utility icon from Windows Program Manager. When you open the utility, it 
will display the IDAPI.CFG specified in the IDAPI section of the WIN.INI 
file. If dBASE is using a different configuration file and you want to 
change the parameters in that file, you must use File|Open to explicitly 
open the file. 

The following are some IDAPI.CFG settings you might need to change:

1) During installation, if an ODAPI configuration file exists on your 
machine, its settings will be read into the new IDAPI configuration file. 
This will set the dBASE file level to 4 (the old level). To use the new 
dBASE for Windows field types, you will need to set this to 5. 

2) On a single machine, you need to set LOCAL SHARE (System page) to TRUE 
to use both dBASE 5.0 Distribution Kit for Windows and other non-IDAPI 
products that access a table at the same time. 

3) If you are using Paradox tables or executing a SQLEXEC() on a shared
drive (network), you must enter a valid path into the NET DIR setting for 
the Paradox driver in the IDAPI.CFG. See the instructions above on how to 
use the IDAPI Configuration Utility.

3.1 Using the ODBC Socket
-------------------------
The dBASE 5.0 Distribution Kit for Windows includes support in the Borland 
Database Engine for an ODBC Socket. It has been certified with Microsoft's 
2.0 ODBC Driver Manager. If you have a different version of the ODBC Driver 
Manager, back up your existing ODBC.DLL and ODBCINST.DLL and copy the 
version 2.0 files ODBC.NEW and ODBCINST.NEW files from your IDAPI directory 
to your WINDOWS\SYSTEM directory, renaming them to ODBC.DLL and 
ODBCINST.DLL. 

The driver description in the ODBC.INI file must match the driver name 
exactly as found in the ODBCINST.INI file in order for the IDAPI 
Configuration Utility to add drivers to the IDAPI configuration file. 

For information on how to create an ODBC driver connection and alias, 
search for "ODBC Driver Connection" in the IDAPI Configuration Utility 
online Help file. 


4. CREATING AN APPLICATION
--------------------------
You need to use dBASE for Windows to develop your application. Read the 
Programmer's Guide and the Language Reference for programming information. 
This section provides guidelines for creating a stand-alone application 
that you can distribute with the Distribution Kit. 

4.1 Creating a User Interface
-----------------------------
When you run your application with the Distribution Kit, the dBASE for 
Windows interactive components--menus, SpeedBar, Navigator, Command window--
are unavailable, by default. In the Distribution Kit, the SHELL() function, 
which hides or displays the dBASE interactive environment, is set to false. 

You can, however, use SHELL(.F., .T.) in your program to display a subset 
of the dBASE menus. To protect your source files from user changes, these 
menus exclude all design and SET function capabilities, as well as access 
to the Navigator and Catalog windows. 

For more information about using SHELL(), read the README.TXT included with 
dBASE 5.0 for Windows. 

Typically, you will create interface elements, such as menus, pushbuttons, 
or a SpeedBar for your application. Read the dBASE for Windows User's Guide 
and Programmer's Guide for information on creating forms and applications. 

4.2 Creating Online Help
------------------------
To create Windows-style Help for your application, you need to compile your 
help files with the Microsoft Help Compiler. The compiler is available with 
the Microsoft Windows Software Developer's Kit. You can also use ForeHelp, 
a third-party product that includes the Microsoft Help Compiler and other 
add-on features. Information about ordering ForeHelp is in section 8, 
"Supporting Products." 

To create context-sensitive help for your application's interface, you will 
typically use an object's HelpFile and HelpID properties. Read the Language 
Reference for more information. 

You can create context-sensitive help for other parts of your application 
using SET HELP TO and SET TOPIC TO. To assign a help file name for your 
application, use SET HELP TO. To assign a topic to display when Help is 
invoked, use SET TOPIC TO. For best results, create your help file using 
unique keywords in context-sensitive topics.

If your application specifies a help file using SET HELP TO, dialog boxes 
such as those displayed by GETFILE() appear with a Help button. When the 
user clicks the Help button, dBASE opens the help file and displays the 
topic specified in the last SET TOPIC TO statement. If you do not have a 
SET HELP TO statement, or your application specifies SET HELP TO with no 
argument, then dialog boxes appear without a Help button. 

4.3 Creating an Expression Builder Table
----------------------------------------
To use the Expression Builder with your own user-defined functions, you 
need to add information about the functions to the DBWC0009.FNF file. When 
you use GETEXPR() in your dBASE application, the functions in your .FNF 
file appear when the user views the items in the Function category. 

In dBASE for Windows, this file is called DBASEWIN.FNF. See the User's 
Guide for information about building expressions and creating a table of 
user-defined functions.

4.4 Customizing the Initialization (.INI) File
----------------------------------------------
The dBASE 5.0 Distribution Kit for Windows executable (DBWC.EXE) attempts 
to find and utilize an initialization file (DBWC.INI) at start up. If it 
fails to find one, it reverts to defaults. You can customize the 
Distribution Kit start up for your application by creating a DBWC.INI with 
the settings you desire for the application, and placing it in the 
directory in which the DBWC.EXE file resides. 

One way to customize a DBWC.INI file is by copying and editing an existing 
DBASEWIN.INI. See Appendix C of the User's Guide for information on all the 
INI settings.

An important statement in the DBWC.INI file is the _dbwinhome setting, which
specifies the dBASE home directory path. This setting is required to run 
Crystal Report forms and label forms. By default, it is set to C:\DBW_DIST.


5. DISTRIBUTING YOUR APPLICATION 
--------------------------------
You need to distribute the dBASE 5.0 Distribution Kit for Windows 
Deployment Disks to each user of your application. You may make as many 
copies of the Deployment Disks as needed. 

After your application users install the Distribution Kit, they need to 
copy or install your application files. Thus you need to distribute your 
application files separate from the Distribution Kit. For example, you can 
write a DOS batch file to copy your application files from floppy disks to 
certain directories on the user's hard disk. If you have a customized 
DBWC.INI file, be sure to copy it over the one that the dBASE 5.0 
Distribution Kit for Windows creates during installation. See section 4.4, 
"Customizing the Initialization (.INI) File" for more information. 

An alternative is to build your own installable disks so that your 
application files are automatically copied to the appropriate directories. 
You can use a separate product, InstallShield, to build installable disks. 
Information about InstallShield is in section 8, "Supporting Products." 

You can copy portions of this README.TXT file to your application disk to 
provide your own instructions to users. Some of the sections you might 
consider using are: 

        2.  Configuration and System Requirements
        3.  IDAPI Configuration Notes (IDAPI.CFG Settings)
        7.  Common Questions & Answers

Copy your version of README.TXT to your application disk. This ensures that 
your end-users read it once the product is installed. 

If your application uses a customized DBWC0009.FNF file, be sure to copy it 
over the one that the dBASE 5.0 Distribution Kit for Windows creates during 
installation. 

If your application accesses SQL data from a SQL database server, each user 
also needs to do a separate installation of the Borland SQL Links for 
Windows. Information about ordering SQL Links for Windows is in section 8, 
"Supporting Products."

When forms containing dBASE for Windows Custom Controls are generated via 
the Form Designer, the full path to the location of the custom controls on 
that machine is stored in the .WFM file. To make sure that the distributed 
applications run on machines without that path, the developer needs to 
modify the .WFM file to remove the full path and copy the custom control 
file to the directory where the .WFM file is located.  

5.1 Running Your Application from Windows Program Manager
---------------------------------------------------------
There are two ways to set up your application so that end-users run it from 
the Windows Program Manager. 

1. Add the following line to the [CommandSettings] section of DBWC.INI:

      COMMAND=DO MY.PRG

   If your application uses its own directory, specify the directory name:

      DIRECTORY=C:\MYDIR

2. In the Command Line field of the Program Item Properties dialog box, add 
   the program name after DBWC.EXE. The following is an example:

      Command Line:      C:\DBW_DIST\BIN\DBWC.EXE MY.PRG

   If your application uses its own directory, specify the directory name 
   both on the command line and as the working directory.

      Command Line:      C:\DBW_DIST\BIN\DBWC.EXE C:\MYDIR\MY.PRG
      Working Directory: C:\MYDIR

Both methods let you specify the program to start once dBASE has loaded. 
You can specify either a source-file (.PRG) or object-file (.PRO) 
extension. dBASE always searches for the object file equivalent of any file 
name you specify. For example, if your program says DO TEST.WFM, dBASE 
searches for and executes TEST.WFO. 

You cannot specify a data file name as a command-line argument. Data files, 
such as tables, should be included with your application on your 
application disk. 

Note: If more than one INI file is needed on a user's system, you can 
specify the location of the INI file on the command line. This technique 
could be used if a user uses more than one dBASE application, requiring 
different INI files, or if the INI file for an application is stored on a 
shared drive. The following is an example: 

   Command Line: C:\DBW_DIST\BIN\DBWC.EXE C:\MYDIR\MY.PRG -CC:\MYDIR

5.2 Creating an Icon for Your Application
-----------------------------------------
The dBASE 5.0 Distribution Kit for Windows installation optionally creates 
a program group in Windows Program Manager and creates an icon for 
DBWC.EXE. You can use this program group for your application, or you can 
create your own. You can also replace the Distribution Kit program icon 
with your own. 

To create or modify icons, use a resource editor, such as Resource 
Workshop. 


6.  USING THE SAMPLE PROGRAMS
-----------------------------
The Developer Disk includes several sample program files. Look at the 
samples listed below for examples of creating stand-alone applications.

The STARTUP application shows how to create a simple form with a menu.
STARTUP.WFM    Main Form
STARTUP.WFO    STARTUP.WFM compiled
STARTUP.MNU    Menu used by STARTUP.WFM
STARTUP.MNO    STARTUP.MNU compiled

The QCKBROW application shows how to launch one or more forms with or
without the dBASE interactive environment.
QCKBROW.DLL    Library with bitmap images for navigational buttons
QCKBROW.HLP    Online Help for the QCKBROW and QCKPROP application
QCKBROW.WFM    Main form for displaying table information in browse
               format, configurable by QCKPROP
QCKBROW.WFO    QCKBROW.WFM compiled
QCKPROP.WFM    Form launched independently or from QCKBROW, configures
               the properties of the QCKBROW form
QCKPROP.WFO    QCKPROP.WFM compiled

To run the samples, 

1.  Install the Distribution Kit.

2.  Copy the files on the Developer Disk to your hard disk. For example, if 
    you installed the Distribution Kit to the C:\DBW_DIST directory, create 
    a C:\DBW_DIST\SAMPLES directory and copy the files into it.

3.  Edit the DBWC.INI file in the BIN subdirectory located under the dBASE 
    home directory, which is typically C:\DBW_DIST. In this file, 
    C:\DBW_DIST\BIN\DBWC.INI, add a line that specifies the directory name 
    you created in step 2. The following is an example:

       DIRECTORY=C:\DBW_DIST\SAMPLES

4.  In Windows Program Manager, edit the properties of the dBASE 5.0 
    Distribution Kit for Windows program icon. Specify the full path and 
    program name as a command-line argument. For example:

       Command Line: C:\DBW_DIST\BIN\DBWC.EXE C:\DBW_DIST\SAMPLES\QCKBROW.WFM

    This runs the QCKBROW application. To run the STARTUP application, 
    change QCKBROW.WFM to STARTUP.WFM.


7.  COMMON QUESTIONS & ANSWERS 
------------------------------
You may wish to include the following questions and answers in whatever
README.TXT file that you deliver with your applications.

Q1:  How much hard disk space do I need to install dBASE 5.0 Distribution 
     Kit for Windows?

A1:  Installation requires 8 MB of hard disk space. In addition, you 
     should have 1.5 MB of free drive space on the drive/partition where 
     Windows is installed (if installing on a different drive/partition). 
     When using a compressed drive, allow a plus 20 percent margin.

Q2:  You stated that 6 MB of RAM is required (8 MB recommended). Will 
     dBASE 5.0 Distribution Kit for Windows run on a 4 MB machine?

A2:  A 4 MB RAM machine has 3 MB of extended memory available before
     anything else is loaded into extended memory. Running Windows 3.1
     requires SMARTDRIVE to be installed which typically takes 1 MB of 
     extended memory. The 2 MB of extended memory remaining is then used 
     by Windows in conjunction with a (Windows) swap file created on your 
     hard drive. All your Windows programs will be sharing this limited 
     resource. dBASE 5.0 Distribution Kit for Windows will likely run 
     on this environment but with reduced performance. The product is 
     recommended for machines that have the specified (6 MB or more) 
     amount of RAM.

Q3:  How do I access the Windows memory management controls?

A3: a) Choose the Windows Control Panel.
    b) Choose 386 Enhanced.
    c) Click the Virtual Memory pushbutton.
    d) Click the Change pushbutton.
    e) Choose "Permanent Swap File".
    f) Increase the value of the New Size option.
    g) Consult your Windows documentation for further information.

Q4:  Can dBASE IV and 5.0 for DOS and dBASE 5.0 Distribution Kit for 
     Windows be installed on the same machine? Which one will start when 
     I issue the dBASE command at DOS with dBASE in my PATH?

A4:  dBASE for DOS, (dBASE IV or dBASE 5.0) starts by calling DBASE.EXE.
     dBASE 5.0 Distribution Kit for Windows has an executable file 
     named DBWC.EXE. The command DBASE, issued at DOS, will execute 
     dBASE for DOS.  The command DBWC, issued at DOS, will give you 
     a DOS error "Not a DOS Program." You must start Windows first. The 
     command WIN DBCW from DOS will start dBASE 5.0 for Windows 
     Distribution Kit. However, typically dBASE 5.0 Distribution Kit for 
     Windows will be run from the Program Manager in Windows or from a 
     Windows Group icon supplied to you by your application developer.

Q5:  Who do I call when I encounter a problem with my application?

A5:  Your primary and only support contact is your application developer.


8. SUPPORTING PRODUCTS
----------------------

8.1. ForeHelp
-------------
ForeHelp (a product of ForeFront, Inc.) allows developers to compile help 
files for Windows applications. To order, contact Borland's Customer 
Service department in the U.S. at 1-800-682-9299 (extension 1247), in 
Canada 1-800-461-3327. In other countries, please contact your local 
Borland representative. 

8.2. InstallShield
------------------
InstallShield (a product of Stirling Technologies, Inc.) allows developers 
to build installable disks to be delivered to their end-users. To order, 
contact Stirling Technologies at: (708) 240-9111.

Also, you can find a sample InstallShield Script (INSTALL.RUL), to build 
installable files, on the dBASE for Windows Compuserve Forum (GO DBASEWIN). 
You can also download foreign language versions of this script INSTALL.FCH 
(French) and INSTALL.GER (German). 

8.3. Borland SQL Links for Windows
----------------------------------
Borland SQL Links for Windows allows users to access SQL data stored on a 
SQL database server. To order, contact Borland's Customer Service 
department at: 1-800-689-9299 (extension 1253). 


9.  FILES AUTHORIZED FOR REDISTRIBUTION
---------------------------------------
The Read Me First document contains a list of files provided by Borland 
that are considered redistributables. For licensing information on these 
items, refer to your existing license agreement. 

