tags:

views:

2732

answers:

9

Here's the situation:

A user of our program suddenly started receiving an error from the Borland Database Engine (BDE) when attempting to start the application. The error message says that it was unable to initialize the BDE and gives error code $251e. User is on BDE 5.2.0.2.

I cannot find any official documentation on the error $251e. The only somewhat useful hit I can get on Google is not very instructive and the suggestion there does no good.

Here are some things that we have tried / discovered:

  1. Other applications that access the BDE the exact same way have no complaints.
  2. The error occurs on a line where we set Connected := True on the TDatabase component.
  3. Reinstalling the BDE makes no difference.
  4. Closing all BDE apps except the one in question makes no difference.
  5. Changing from using an MSSQL database to a Paradox database makes no difference.
  6. Making the logged in user a member of the Administrators group on the workstation makes no difference.
  7. The typically logged in user is a domain user.
  8. Logging in as a workstation administrator (non-domain) account that was originally setup on the machine as a last resort administration account, all works fine.
  9. Creating a new workstation user with local admin rights, the problem returns.

The user has been temporarily allowed to use the one workstation admin account that actually works, but this is not an acceptable long-term solution. Any idea where we might go from here? Any clue as to what $251e really means?

I know that the BDE is way out of date and no longer supported, but changing the use of the BDE is not an option right now.

+3  A: 

You might have better luck searching for the error here..

http://www.fulltextsearch.com/

A common culprit seems to be a conflicting device driver.

Good luck

KevinRF
Nice, I was not aware of this search engine. At least I've got a list of fresh ideas to try out...
Scott W
+2  A: 

I am not sure, because I don't use BDE for lot's of years, but here are some hints and links:

Error $251E means "Insufficient shared memory available"

Proposed solutions:

  • Increase SharedMemSize to 4096 or 8192
  • Change SharedMemLocation to 0x5BDE.
zendar
A: 

look on codegear's web site. some time ago i saw an article about the memory layout for this shared memory and ways to resolve a problem like this. it's an ugly business but there was a good article on this. sorry, i can't find it offhand.

X-Ray
A: 

After using www.fulltextsearch.com to read through hundreds of messages regarding 251e (thanks for the pointer KevinRF), we came up with a list of about a half-dozen new things to try.

Turns out the user had turned on compatibility mode (right-click exe file, choose Properties, Compatibility tab) for the program in question. Turning compatibility mode off for the application resolved the error.

Thanks to all for the suggestions!

Scott W
Ha! Users!!! They always find new ways to screw up the application !! :-) hehehehe
Fabricio Araujo
A: 

Wow, I tried a lot of tactics to try and solve this problem, and it was the same. Compatibility mode. Disabled the compatibility mode and the problem is gone for good.

Glad this information could be of help. SO works! :)
Scott W
A: 

If your executable is with the tables (same directory), try putting it in another location.

A: 

Try reinstalling BDE Engine.

Giancarlo
A: 

You can also Try to rename the Executable file name, had the same problem, I know it sounds strange but it worked for me.

Francois
A: 

yo turn off uac and add the setup.exe and regsvr32.exe to DEP....bada bing