Home

Communication Horizons
established 1986

Home
Contact

 

Knowledgebase Index
About Us
Contact
Legacy Products


Communication Horizons
65 High Ridge Rd. #428
Stamford CT 06905

info@netlib.com

800-480-1604
203-321-1278
fax  286-1056

       

Knowledgebase


>>ITEM : R01002 
>>DATE: 07/30/1997 
>>TYPE: Information 

>>TITLE:  Btrieve Page Size Error (code 24)

>>PRODUCT(S):
RaSQL/B (all versions) for Clipper
RaSQL/B (all versions) for FoxPro Dos

>>PLATFORMS(S):
Btrieve for DOS version 5.x

>>SUMMARY:
Incorrect Btrieve startup parameters may generate 
Btrieve Page Size error (error 24) when opening
or creating a Btrieve file.

>>MORE INFORMATION:
Btrieve files are created with page sizes in increments
from 512-4096 bytes per page. Btrieve has a startup
parameter which allows you to specify the largest
page size you expect to work with. (The default
maximum is usually 2048 bytes per page.) This
minimizes the Btrieve engine's memory footprint.  
However, if an attempt is made to open a file that has
a larger page size than the maximum, a page size 
error will occur.

In addition, if you use RaSQL/B to create a new
Btrieve file without specifying a specific page size 
with N_XPAGESIZE, RaSQL/B calculates an 
optimal page size based on calculations provided
by BTI (now Pervasive). If this page size exceeds
the maximum, a page size error will occur.

>>RESOLUTION/FIX:
Specify a larger page size (up to 4096) when starting  
Btrieve.  Use the "/P:nnnn" startup parameter, where
nnnn is the page size in 512 byte increments from
512-4096 (i.e., 512, 1024, 1536, 2048, 2560, 3072,
 3584 or 4096). For example:

	BTRIEVE /P:4096

If Btrieve warns there is not enough memory to 
allocate this page size, try adding the /M:kk
parameter, where kk is the number of kilobytes
of memory to allocate to Btrieve. The default is
32, so try setting it to /M:40 and keep increasing 
it by 2K until Btrieve loads properly.  E.g.,

	BTRIEVE /P:4096 /M:40

If you are only getting this error when creating 
new files and you do not wish to increase the 
amount of memory Btrieve allocates, you can 
alternatively use N_XPAGESIZE to specify 
the page size RaSQL/B should use to create 
new Btrieve files.  
E.g.,

	N_XPAGESIZE(1536)
	N_XAMAKETBL( ... )

We recommend that you upgrade to Btrieve for
DOS 6.15 or later as this is not a problem in 
this environment.  If using Btrieve 6.x you must 
upgrade to either RaSQL/B 6.1x for Clipper
or RaSQL/B 2.1x for FoxPro.

>>SEE ALSO:

>>COPYRIGHT 1997 Communication Horizons
All rights reserved worldwide.
No distribution without specific consent of publisher.



Home Top

 

© Copyright 2001 Communication Horizons LLC.
“NetLib” and “Encryptionizer” are Registered Trademarks of Communication Horizons.
US and international patents pending.
Updated 29 Dec 2001