Unknown Internal Operating System Error

I have written a program using Delphi 5 Pro.  I am using the Borland Database engine and my db tables are in Paradox 5.x format.  One of my tables is used for document imaging.  In this table there is defined several data fields and one BLOB field for the TIFF document.  This TIFF can be 1 or more pages in length.  To provide this facility in my software without writing the whole TWAIN interface myself I utilized a product called ImageLib from Skyline Tools.  They seem to be updating their product but technical support is absent.  I have several clients whose imaging table has increased to 2.0x gb.  This file size referenced is the size of the .MB file.  I have many clients who are using this program and some who have imaginge tables (.MB) that are larger than 2gb in size and they are having no trouble.  These particular clients that are having trouble all have approximately the same size table.  When they scan a single or multiple page imagine into the system the scanner interface software comes up fine.  The image(s) are scanned and they are being returned to my application for storage and display.  Just as this process finishes my application produces as error message stating "Unknown Internal Operating Sytem Error".  The image is not saved and the user has to kill the running application to get out of my program.  If I create a new empty table and SQL query the contents of the 2.0x sized database to the new empty table I can then scan several more documents but before long I'll get the same error message.  I'm stumped as to what to do.  I tried using the clients database on my computer here and an HP scanner and I scanned 150 pages and not a single error.  THey are using Windows XP, I'm using Windows XP.  I stored the data on a Windows 2000 Server and am running the application on a Windows XP box.   This is how my clients system is configured.  I have tested on other types of servers and even peer to peer and I cannot get this process to fail.  Help.  Thanks in advance.
Who is Participating?
PAQed with no points refunded (of 500)

EE Admin
Russell LibbySoftware Engineer, Advisory Commented:

Are all the systems using NTFS volume types to store the data?  Or are any of the volumes fat?


TheRealLokiSenior DeveloperCommented:
Check the BDE settings to ensure the .DB/PX/MB table is being created with a suitably large block size
Configuration tab
"block size" make it a multiple of 2048, but high enough... eg. 8192
What language/region is the client set as?
It's also a good idea to set the "LangDriver" to "Paradox ascii" as alternatives can mess up indexing and cause other issues.
set "Level" to 5 or higher (mine is 7), so that new tables are created at this level
You can use database desktop to check the block size of yours and your clients .DB table, and the level

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Russell LibbySoftware Engineer, Advisory Commented:
Also check this borland article regarding the specified error:


axp275Author Commented:
To RLLibby:

file system used is NTFS.

To TheRealLoki:

This is the basic stuff.  Checked that first and in fact manually restructed the table all the way up to 32k block size.  Made no difference.

To rllibby,  2nd submission:  This was article read and tested for as the first thing I tried.  Second thing was to increase the block size.  I use a small program called pxrest.exe (I renamed to pxrestructure.exe) to restructure paradox tables.
TheRealLokiSenior DeveloperCommented:
well if it's not the language settings, and the bantam.dll is correct (as mentioned in that article), 1 other possibility is antivirus software. Some can be quite brutal in their active scanning. Sorry I don't have any more advice.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.