|
This section documents the use of DOS requesters.
Pervasive.SQL 9 SP1 (9.1) supports DOS Btrieve applications in several different ways. The exact method, however, depends on the current configuration and environment of the workstation.
The following choices are available:
Note
DOS Box support must be used for Workgroup engines. These engines do not support the DOS requesters described below.
There are different reasons for using these different options, including:
The table below shows the DOS requester configurations that are supported.
The preferred Requester for Windows is BTRBOX. You can use this Requester even for legacy DOS applications, and for Workgroup applications.
Note
Use the BREQUEST/BREQNT/BREQTCP Requesters ONLY if you experience a problem with BTRBOX. These Requesters are supported for access to Server engines only, not to Workgroup engines.
The Requesters for non-Win32 boxes are:
The following sections document the steps for running DOS applications on Windows 32-bit platforms, Windows 98/ME, and DOS.
To run a Pervasive application on a Windows 32-bit workstation or locally on a Windows 32-bit server, you should always install the Windows client components. Note, these are installed on the Windows server by default. You can find the Windows client installation on the Pervasive.SQL 9 SP1 (9.1) CD in the \clients\win directory. Typically, the client installation programs are also installed automatically on your Pervasive.SQL 9 SP1 (9.1) server in the \pvsw\clients\win directory.
After the Windows client component installation, you will have everything you need to run a DOS, Windows 16-bit, or Windows 32-bit application. The default DOS application support installed is the Win32 DOS Box configuration.
On Windows 32-bit platforms, the DOS Box Install configures the drivers to be completely transparent. Thus, you are able to immediately open a command prompt and run a DOS Btrieve application. The CONFIG.NT file, located in the WINNT\SYSTEM32 directory, contains the command that enables DOS application support. This file is similar to the old Config.SYS in DOS. The Windows operating system loads the driver for each DOS session opened. In the configuration file, the Install places the following path to load the Win32 DOS Box driver:
To disable the Win32 DOS box support to use the DOS TCP/IP or SPX requester, you must follow these steps:
To use the DOS TCP/IP requester on a Windows 32-bit workstation, you must first disable the Win32 DOS Box support as described above, and then enable the DOS TCP/IP requester configuration.
To enable BREQTCP support, follow these steps:
%SystemRoot%\SYSTEM directory. %SystemRoot% refers to your Windows directory, typically C:\WINNT. You can determine the value for %SystemRoot% by opening a DOS box and entering the SET command.Once the DOS TCP/IP requester is setup, follow the following steps to run a DOS application:
Note
The commands to load JSBDOSWS and BREQTCP can be put in your AUTOEXEC.NT file. You can load JSBDOSWS with the Load High command.
To stop a DOS application, unload the requester components by entering the command BREQTCP /u followed by JSBDOSWS /u in the DOS box before closing it.
There are two DOS SPX Btrieve requesters:
BREQUEST exists for historical purposes before Windows 32-bit support was available, and is still provided because it requires smaller memory than BREQNT. If you are accessing Pervasive.SQL on a NetWare server and if you are running low on DOS conventional memory, you may need to use BREQUEST. If you are accessing a Windows 32-bit server, you must use BREQNT.
In order to use the DOS SPX requester on a Windows 32-bit workstation, you must first disable the Win32 DOS Box support as described above; there are no special steps required to enable the DOS SPX requester configuration.
A DOS application can be run with the SPX protocol to a remote server engine by following these steps:
To stop a DOS application, unload the requester by entering the command BREQUEST /u or BREQTCP /u in the DOS box before closing it.
To run a Pervasive application on a Windows 98/ME workstation, you must always install the Windows client components. These are found on the Pervasive.SQL 9 SP1 (9.1) CD in the \clients\win directory.
Typically, the client installation programs are also installed on your Pervasive.SQL 9 SP1 (9.1) server in the \pvsw\clients\win directory by default.
After the Windows client component installation, you will have everything you need to run a DOS, Windows 16-bit, or Windows 32-bit application. The default DOS application support installed is the Win32 DOS Box configuration.
Note
Legacy DOS applications must use the BTRBOX configuration on Windows 98/ME. In fact, it is the only supported configuration with the Workgroup engine. However, with client/server products, you can run DOS applications with either the BTRBOX configuration, or the legacy 16-bit DOS requesters.
If the DOS application is being run on a DOS or Windows 16-bit operating system, then the legacy 16-bit DOS requesters MUST be used. BTRBOX works on Win32 operating systems only.
To run a DOS application with the Win32 DOS Box configuration follow these steps:
Closure of this dialog will unload BTRBOX95. You will only need to run BTRBOX once -- you may have multiple DOS sessions open using a single instance of the driver.
Note
You MUST reboot after the initial installation of the Windows client components in order for the Win32 DOS Box support to function. A device driver (VxD) is registered and will not load until reboot.
The proper order to stop a DOS application is as follows:
If you do not follow this order, BTRBOX95 or the database engine may not unload properly.
In situations where stopping and restarting all clients is recommended, you should perform all three steps above. Simply stopping and starting your client applications is not sufficient.
To disable the Win32 DOS box support in order to use the DOS TCP/IP or SPX requester, you must follow these steps:
Caution
Editing your registry is dangerous and can cause you to reinstall your entire computer. If you do not feel comfortable doing this, please obtain the services of a qualified technician. Pervasive can accept no responsibility for a damaged Registry.
To use the DOS TCP/IP requester on a Windows 98 workstation you must first disable the Win32 DOS Box support as described above, and then enable the DOS TCP/IP requester configuration using the following steps:
Once the DOS TCP/IP requester is setup, follow these steps to run a DOS application:
To stop a DOS application, enter the command BREQTCP /u in the DOS box to unload the requester.
There are two DOS SPX Btrieve requesters. BREQNT.EXE is the "dual mode" requester used by a DOS application to communicate to either a Windows 32-bit server or a NetWare server. BREQUEST.EXE is a NetWare-only version of the DOS SPX requester. This exists for historical purposes before Windows 32-bit support was available, and is still provided because it requires smaller memory than BREQNT. If you are accessing Pervasive.SQL on a NetWare server and if you are running low on DOS conventional memory, you may need to use BREQUEST. If you are accessing a Windows 32-bit server, you must use BREQNT.
To use the DOS SPX requester on a Windows 98 workstation, you must first disable the Win32 DOS Box support as described above; there are no special steps required to enable the DOS SPX requester configuration.
A DOS application can be run with the SPX protocol to a remote server engine by following these steps:
To stop a DOS application, unload the requester by entering the command BREQUEST /u or BREQTCP /u in the DOS box before closing it.
DOS Btrieve application support on DOS workstations is only available through the DOS TCP/IP or DOS SPX requesters.
Both allow a DOS application to communicate to a Windows 32-bit server or NetWare server running the client/server version of Pervasive.SQL 9 SP1 (9.1).
To use the DOS TCP/IP requester on a DOS or Windows workstation, you must have one of the following TCP/IP stacks:
You can enable the DOS TCP/IP requester configuration using the following steps:
|
If Your TCP stack is
|
Rename this file to VSLDOS.INI
|
|---|---|
|
Microsoft LAN Manager
|
VSLDOS.M3
|
|
Novell LAN Workplace
|
VSLDOS.LWP
|
|
FTP Software
|
VSLDOS.FTP
|
SET VSL=[jsb-location]where [jsb-location] is the fully-qualified path of the directory where you placed the VSLDOS.INI file. For example, C:\PVSW\BIN for DOS.
Once the DOS TCP/IP requester is setup, follow these steps to run a DOS application:
MICROSOFT LAN MANAGER
NOVELL LAN WORKPLACE
Using Novell's LAN Workplace for DOS with BREQTCP.EXE requires that the environment variable EXCELAN be set to the Novell base directory. For example, if you installed LAN Workplace in the C:\NET directory, do a SET EXCELAN=C:\NET prior to loading MNOVLWP.EXE and BREQTCP.EXE.
FTP SOFTWARE
e.g. 'kernel-name' -t 16 -p 20
allocates 16 TCP connections and 20 packet buffers.
To stop a DOS application, unload the requester components by entering the command BREQTCP /u at the DOS prompt, followed by [JSB executable] /U, where [JSB executable] is either M3OPEN.EXE, MNOVLWP.EXE, or MFTP22.EXE. If running in a Windows DOS box, unload the requester components before closing the DOS box.
There are two DOS SPX Btrieve requesters. BREQNT.EXE is the "dual mode" requester that can be used by a DOS application to communicate to either a Windows 32-bit server or a NetWare server. BREQUEST.EXE is a NetWare-only version of the DOS SPX requester. This exists for historical purposes before Windows 32-bit support was available, and is still provided because it has a smaller memory requirement than BREQNT. If you are accessing Pervasive.SQL on a NetWare server and if you are running low on DOS conventional memory, you may need to use BREQUEST. If you are accessing a Windows 32-bit server, you must use BREQNT.
A DOS application can be run with the SPX protocol to a remote server engine by following these steps:
To stop a DOS application, unload the requester by entering the command BREQUEST /u or BREQTCP /u in the DOS box before closing it.
To verify that the install completed successfully, you need a pure DOS Btrieve application. One of the simplest application ships with the server engines. You will find BUTIL.EXE in the PVSW\Clients\DOS directory. Running this command by itself will show a list of available commands. Do this one time to ensure the copyright information says Butil for DOS. You will then want to access a Btrieve file. You can use the BUTIL -STAT command to do this. If the command completes successfully, your DOS support is functioning as designed.
Try a command like this:
Here, "f:" is a drive letter mapped to your server and "f:\pvsw\samples\sample.btr" is the path and filename of an existing Btrieve data file. A successful completion will return information about the data file. Otherwise, you will see a status code indicating the problem. Pervasive Technical Support can help you resolve any problems.
BREQTCP.EXE is a DOS executable that runs on various DOS and Windows platforms. It is built using JSB Corporation's Virtual Socket Library (VSL). VSL implements an API based on the Berkeley 4.3 sockets standard that enables development of platform-independent and transport-independent network applications. For information about JSB Corporation, visit their site at http://www.jsb.com.
Server software requirements
You must have one of the following client operating systems:
For DOS, you must have one of the following TCP/IP stacks:
You must have your Pervasive.SQL server IP address configured properly on your clients for Pervasive.SQL to function. There are two ways to do this.
To configure your clients to use the server's IP address, do ONE of the following:
In Windows 98/ME or NT:
In Windows 32-bit platforms:
or
\WINNT\SYSTEM32\DRIVERS\ETC\HOSTS file (Windows 32-bit operating system).\WINNT\SYSTEM\DRIVERS\ETC\HOSTS file (Windows 98/ME).
Note
BREQTCP will return Btrieve status 20 if it is unable to resolve the server name into an IP address, or if the IP address is incorrect or unreachable.
This section contains notes on technical issues.
When running BREQTCP on Windows 98/ME, only one DOS box is supported. Unloading BREQTCP is not sufficient to release the JSB VxD. The DOS box must be closed before another DOS box can load BREQTCP.
On Windows 32-bit operating system, there is no restriction on the number of DOS boxes that can be invoked.
There are some configuration requirements when you use the DOS Requester (BREQTCP, BREQNT or BREQUEST).
After adding a target IP address for a NetWare server in the local Windows 98/ME hosts file, BREQTCP must be unloaded and reloaded.
After correcting a target IP address for a NetWare server in the local Windows 98/ME hosts file, the Windows 98/ME system may need to be restarted to restart the JSB VxD.
BREQTCP caches both valid and invalid IP addresses while the JSB VSL VxD caches valid IP addresses. The result is that modifications to the hosts file will not affect BREQTCP and may not affect the JSB VSL VxD depending upon prior attempts cached. This can be confusing when you are trying to modify a target IP address in the local host's file or on a DNS server.
Note
The Windows 98/ME 'ping' utility does not exhibit this behavior, so ping may work while BREQTCP requires that Windows 98/ME be restarted.
You may receive the following error message when loading BREQTCP:
If you see this message, you can determine the cause by using this checklist:
You manually configure the settings for the Windows 16-bit client requester in the file BTI.INI. See To configure settings in BTI.INI in Advanced Operations Guide.
Note that no DOS requestor is available for the Pervasive.SQL relational interface. All database transactions on DOS must be done through the Pervasive.SQL transactional interface.
Before configuring the Pervasive.SQL DOS Requester, review this section for any information necessary to your operation. You should also read the READDOS.TXT file on the distribution media.
You must load the Pervasive.SQL DOS Requester at a workstation running DOS before that workstation can access network data files. There are three versions of the DOS Requester: BREQUEST, BREQNT, and BREQTCP.
The DOS Requester loads into a DOS workstation's memory as a Terminate and Stay Resident (TSR) program. You can access local as well as remote files by running a Pervasive.SQL engine on your machine.
There are some configuration requirements when you use the DOS Requester.
Load the DOS Requester at the workstation by entering one of the following commands:
[path] BREQUEST [options] [path] BRREQNT [options] [path] BREQTCP [options]
|
path
|
The path to the directory where the DOS Requester is stored. You can omit the path name if the DOS Requester is stored on the default drive or if it is located in a directory in your search path.
|
|
option
|
Any of the configuration options described in Btrieve DOS Requester Options .
|
For example, if the Requester is on the default drive and you want to specify a 2,048 byte data message length, enter BREQNT /D:2048.
Note
The forward slash (/) before the configuration option is the only valid character you can use. If you specify a dash (-) or a backslash (\), the Requester may load improperly.
To unload the DOS Requester, use the /U parameter of the DOS Requester (BREQUEST, BREQNT, or BREQTCP; see Unload Requester (/U) ), or the DOS Requester utility, BREQUTIL.EXE. At the workstation where the DOS Requester is loaded, enter BREQUTIL -STOP.
To determine the version of your DOS Requester, you can enter BREQUTIL -VER.
If files have been left open (for example, when an application does not issue a Close operation for each open file, or does not issue a Reset), simply logging out of one or more servers from a workstation does not close data files or terminate the Btrieve communications connection to the server. To close data files and terminate the connection, you must unload the Btrieve requester.
There are several configuration options for the Btrieve DOS Requester.
Range: /C:0 | /C:1 | /C:1,username,password
Default: /C:1
Memory Required: Not applicable
Runtime Server Support allows access to the MicroKernel running on a NetWare Server that the user is not attached to. The workstation must have a network connection to one or more servers, but not necessarily the target Btrieve server. Using this option, you can enable or disable NetWare Runtime server support.
Range: 532 through 57,000 bytes (55,512 bytes is the upper limit for BREQNT)
Default: 4096 bytes
Memory Required: 355 bytes + data message length
This option specifies the length of the largest record (or the largest portion or chunk of a record) you want to access through the MicroKernel. (If you omit this option, the Requester uses the default value, 4096). The Requester uses this value to calculate the length of the data message buffer reserved for passing records between the MicroKernel and your applications. The requester maintains one copy of the data message buffer.
The value you enter here should not exceed the largest communication buffer size you configure for the MicroKernel through the configuration properties since that is the maximum message that the server communication agent can receive.
Specify the data message length in bytes. For example, if the largest record your application uses is 3,000 bytes, specify the /D option as follows:
/d:3000
Note
Specifying a higher value than you need for the /D option does not improve performance and could waste workstation memory.
Range: Not applicable
Default: Not applicable
Memory Required: Not applicable
To run a DOS-based Btrieve application in a Windows DOS box, you must have the DOS Requester loaded in each DOS session. However, if you have already loaded the DOS Requester before loading Windows, you cannot load the DOS Requester in any subsequent DOS session. Consequently, you cannot run the DOS-based Btrieve application in the DOS box.
In each Windows DOS session that will be running a Btrieve-based application, load the DOS Requester with the /L option. Doing so loads another instance of the DOS Requester that is available only to the DOS session. This operation provides the DOS session with its own copy of the DOS Requester that is available only to the DOS session, and prevents the DOS session from using the instance of the DOS Requester that you loaded before starting Windows.
Note
Versions of Btrieve for NetWare prior to 6.15 required the DOS requesters to be loaded before Windows in order to run Win16 applications. This is no longer necessary.
Range: 532-4,096
Default: 532 (BREQUEST) or 1514 (BREQNT or BREQTCP)
Memory Required: 3 * Receive Packet Size
This option serves the same function as the Receive Packet Size setting for the NetWare Btrieve Communications Manager server setting (described in Pervasive.SQL User's Guide). It has the same range as the server parameter but has different default that is optimized for the DOS requester.
Range: None
Default: No compression
Memory Required: Approximately 32 KB on the workstation and 32 KB per client on the server
In many cases (such as when implementing extended reads or huge records), this option can help reduce network traffic and increase performance by reducing the number of packets required to complete a request to the MicroKernel. This option may, however, adversely affect memory and performance due to the compress and uncompress work that must be done.
Compressing and decompressing data takes extra CPU time on both the server and client sides. Because of overhead, do not use this option with fast networks or with slow workstations for clients.
Note
This is not to be confused with Data Compression Flag. For more information on Data Compression Flag, see Advanced Operations Guide.
Range: 1 through 8, or more if memory permits
Default: 8
Memory Required: 27 bytes per server
The /S option specifies the number of MicroKernel Database Engine with which the requester can simultaneously communicate.
Range: 1 through 32,000
Default: 0
Memory Required: 9 bytes per task
The /T option specifies the maximum number of workstation tasks that can access the server engine at one time using the BTRVID function. Applications that use the BTRV function are not affected by this option. For more information about whether you should set this option, refer to the documentation for your Btrieve application.
Range: Not applicable
Default: Not applicable
Memory Required: Not applicable
This option unloads the Btrieve requester from memory. It performs the same function as a BREQUTIL -STOP command.
The /? option lists the options that are available.
|
Chapter contents
Prev topic: Using TCP/IP to Connect to a Linux Server
|