community.borland.com

Article #15274: Steps for FAT32 Support with the BDE 3.5


Technical Information Database

TI274B.txt   Steps for FAT32 Support with the BDE
Category   :General Programming
Platform    :All
Product    :BDE  3.5

Description:
Windows 95 version 950B and Windows 98 have a file system called FAT32.
BDE Versions prior to version 3.5 will not work with this file system.
BDE Versions after version 3.5 have no problem with FAT32. This document
discusses how to make BDE version 3.5 work with FAT32.

The FAT file system had problems with large cluster sizes with large hard 
disks making storage inefficient.  FAT32 keeps the cluster size at 4k 
enabling efficient data storage. 



COMMON BDE ERRORS EXPERIENCED WITH FAT32 SYSTEMS
-------------------------------------------------

"Invalid File Name"
"Invalid Table Name"
"File Not Found"
"Table Not Found"

NOTE: All Delphi and CBuilder exceptions are of 
      type EDBEngine error.  The errors above are
      displayed within this exception type.
-------------------------------------------------


To determine if you have a FAT32 system:
1) Right click the mouse on the My Computer icon on the 
desktop.  Select the Properties menu item.  On the general
tab, under System, it will say 4.00.950 B.  NOTE: 
4.00.950A or 4.00.950 does not support FAT32.  At the 
time this was written 4.00.950B is the latest.  Microsoft
may decide to create newer builds with FAT32 support.

2) Double click on the My Computer icon on the desktop.  
Right click on each local drive and select the Properties
menu item.  If any of the drive Types is Local Disk (FAT32),
then you have a FAT32 partition on your system.  Note:
Local Disk (FAT) is not FAT32.

If in the above steps you have determined that you have a
FAT32 file system, you can obtain a version of BDE 3.5 which
does not have this problem from http://www.borland.com/devsupport/bde/oldver.html


OTHER OPTIONS/WORKAROUNDS IF UPGRADE IS NOT AN OPTION
-----------------------------------------------------
If for any reason, the new DLL or set of DLLs cannot be
placed on the system, you must follow the proceeding
criteria:
1) All sub-directories must be 8 characters or less.
2) If tables must be in a 9 character or greater 
   sub-directory, you can still open the table by
 a) (Delphi, CBuilder) specifying the full path and file
    name in TTable.Table name, leaving DatabaseName blank.
 b) (BC++) Passing NULL to the pszAliasName parameter and
    using the full path and file name in DbiOpenTable. 
    NOTE: DbiSetDirectory will not work.
3) Table names can be greater than 8 characters with
   spaces.

Reference:
7/15/98 3:24:24 PM

Last Modified: 09-NOV-99