知道如何解决 BDE 错误 $251e 吗?
情况如下:
我们的程序的用户在尝试启动应用程序时突然开始收到来自 Borland 数据库引擎 (BDE) 的错误。 错误消息表明无法初始化 BDE,并给出错误代码 $251e。 用户使用的是 BDE 5.2.0.2。
我找不到任何有关错误 $251e 的官方文档。 我在谷歌上能得到的唯一有用的点击是不是很有指导性并且那里的建议没有任何好处。
以下是我们尝试/发现的一些事情:
- 以完全相同的方式访问 BDE 的其他应用程序没有任何抱怨。
- 该错误发生在我们在 TDatabase 组件上设置 Connected := True 的行上。
- 重新安装 BDE 没有什么区别。
- 关闭除相关应用程序之外的所有 BDE 应用程序并没有什么区别。
- 从使用 MSSQL 数据库更改为 Paradox 数据库没有什么区别。
- 让登录用户成为工作站上管理员组的成员没有什么区别。
- 通常登录的用户是域用户。
- 以最初在计算机上设置为最后手段管理帐户的工作站管理员(非域)帐户登录,一切正常。
- 创建具有本地管理员权限的新工作站用户后,问题又出现了。
暂时允许用户使用实际有效的一个工作站管理员帐户,但这不是一个可接受的长期解决方案。 知道我们接下来可以去哪里吗? 关于 $251e 的真正含义有什么线索吗?
我知道 BDE 已经过时并且不再受支持,但目前无法更改 BDE 的使用。
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:
- Other applications that access the BDE the exact same way have no complaints.
- The error occurs on a line where we set Connected := True on the TDatabase component.
- Reinstalling the BDE makes no difference.
- Closing all BDE apps except the one in question makes no difference.
- Changing from using an MSSQL database to a Paradox database makes no difference.
- Making the logged in user a member of the Administrators group on the workstation makes no difference.
- The typically logged in user is a domain user.
- 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.
- 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.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
在使用 www.fulltextsearch.com 阅读了数百条有关 251e 的消息后(感谢 KevinRF 的指点),我们列出了大约六个要尝试的新事物的清单。
事实证明,用户已经为相关程序打开了兼容模式(右键单击 exe 文件,选择“属性”、“兼容性”选项卡)。 关闭应用程序的兼容模式解决了该错误。
感谢大家的建议!
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!
关闭uac并将setup.exe和regsvr32.exe添加到DEP。
Turn off uac and add the setup.exe and regsvr32.exe to DEP.
查看 codegear 的网站。 前段时间我看到一篇关于此共享内存的内存布局以及解决此类问题的方法的文章。 这是一个丑陋的行业,但有一篇关于此的好文章。 抱歉,我找不到它。
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.
哇,我尝试了很多策略来尝试解决这个问题,结果都是一样。 兼容模式。 禁用兼容模式,问题就消失了。
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.
如果您的可执行文件与表一起(同一目录),请尝试将其放在其他位置。
If your executable is with the tables (same directory), try putting it in another location.
您还可以尝试重命名可执行文件名,遇到了同样的问题,我知道这听起来很奇怪,但它对我有用。
You can also Try to rename the Executable file name, had the same problem, I know it sounds strange but it worked for me.
看起来路径不知何故导致了问题。
我通过重命名包含项目文件的文件夹解决了这个问题。
Looks like the path somehow caused the problem.
I solved it by renaming the folder containing project files.
您可能会更好地在这里搜索错误。
http://www.fulltextsearch.com/
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
我不确定,因为我已经很多年不使用 BDE,但这里有一些提示和链接:
错误 $251E 表示“可用共享内存不足”
建议的解决方案:
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: