Содержание
- An error occurred while initializing borland database engine
- Error $2501 & $210D While Attempting to Initialize Borland Database Engine (BDE)
- Knowledge Base ShopPAK
- An error occurred while initializing borland database engine
- An error occurred while initializing borland database engine
An error occurred while initializing borland database engine
Давно и безуспешно пытаемся разобраться с данным сообщением: An error occurred while attempting to initialize Borland Database Engine (error $2501).
У нас есть проект, пишущийся на Delphi , конфигурация для которого хранится в БД формата Paradox, работаем соответственно через BDE. При запуске второй программы подключающейся к БД возникает выше описанное сообщение. Рассматривали через отладчик, данная проблема возникает где-то глубоко, в момент открытия компонента DataBase.
Первый раз данная проблема у нас возникла с появлением XP sp1, до того момента в ходу была какая-то другая ХР, в которой все работало. К счтастью на тот момент в W2000 все работало, но недавно от пользователей начали поступать жалобы, что в W2000 sp4 уже не работает.
Кто-нибудь знает что это за беда и как с ней бороться?
|
От: | SkySandy |
Дата: | 19.07.04 07:46 | |
Оценка: |
Здравствуйте, orient, Вы писали:
O>Здравствуйте.
O>Давно и безуспешно пытаемся разобраться с данным сообщением: An error occurred while attempting to initialize Borland Database Engine (error $2501).
O>У нас есть проект, пишущийся на Delphi , конфигурация для которого хранится в БД формата Paradox, работаем соответственно через BDE. При запуске второй программы подключающейся к БД возникает выше описанное сообщение. Рассматривали через отладчик, данная проблема возникает где-то глубоко, в момент открытия компонента DataBase.
O>Первый раз данная проблема у нас возникла с появлением XP sp1, до того момента в ходу была какая-то другая ХР, в которой все работало. К счтастью на тот момент в W2000 все работало, но недавно от пользователей начали поступать жалобы, что в W2000 sp4 уже не работает.
O>Кто-нибудь знает что это за беда и как с ней бороться?
Это известная беда. Мммм. Сделай так: Сразу после возниконовения ошибки, не выходя из программы, запусти Database Desktop и попробый открыть любую таблицу.
Попробовал? Тогда получишь другое сообщение об ошибке, которое укажет что нужно делать и в чем проблема
|
От: | orient |
Дата: | 19.07.04 09:21 | |
Оценка: |
Имеется в виду сообщение «Insufficient memory for this operation»?
Что-то, как-то не понятно чего делать дальше.
Виртуальную память увеличивали, без изменений.
|
От: | SkySandy |
Дата: | 19.07.04 09:43 | |
Оценка: |
Здравствуйте, orient, Вы писали:
O>SkySandy
O>Имеется в виду сообщение «Insufficient memory for this operation»?
O>Что-то, как-то не понятно чего делать дальше.
O>Виртуальную память увеличивали, без изменений.
Так увеличивать то нужно память для BDE.
Посмотри BDE Administrator.
Мой совет: увеличь все параметры от значений по умолчанию в 4 раза.
По крайней мере у меня после этого уже ошибки уже не сыпались.
Источник
Error $2501 & $210D While Attempting to Initialize Borland Database Engine (BDE)
W hen using applications that utilize Borland Database Engine (BDE), one of the following error messages may occurred:
An Error occurred while attempting to initialize the Borland Database Engine (error $2501)
An Error occurred while attempting to initialize the Borland Database Engine (error $210D)
The error may happen anytime during usage of the app. The error is most likely caused by insufficient shared memory that is available for the database engine usage. Thus, the resolution for the error is by increasing the shared memory available for the BDE.
- Open Control Panel.
- Search for and open BDE Administrator.
- Expand Configuration.
- Expand System.
- Open the INIT definition.
- Modify and enter the value of SHAREDMEMLOCATION and SHAREDMEMSIZE according to the amount of physical memory (RAM) the computer has, based on table below.
Physical Memory (RAM) Size | SHAREDMEMLOCATION | SHAREDMEMSIZE |
2 GB | 0x2BDE | 2048 |
4 GB | 0x5BDE | 4096 |
8 GB | 0x7BDE | 8192 |
Источник
Knowledge Base
ShopPAK
This particular error, “An error occurred while attempting to initialize the Borland Database Engine (error $210D)”, sometimes occurs when you have a particular TradeSoft product open and are trying to open a different product at the same time. This is due to how your Windows is managing its BDE stuff inside the OS. Windows randomizes memory when loading DLLs in an attempt to thwart viruses and other nefarious attacks. Unfortunately, it may impact other programs and in this case, it has affected a program we use known as the BDE. As part of our installs, we include a 3rd party application that is part of our database access functions. It’s called BDE (Borland Database Engine). To permanently fix this so that you can have either program open in any order, please make sure to close all TradeSoft programs on this PC first.
The administrator program should be in Control panel.
Launch this application on your PC.
Check out the screen shot below. We want you to make some similar changes. Click the configuration tab and click the INIT node under System.
Please enter ==> 3BDE into the SHAREDMEMLOCATION parameter
Please enter ==> 4096 into the SHAREDMEMSIZE parameter
Make sure you save these changes. When you close the admin window it will ask you if you want to save the changes. Say yes. To make sure you indeed changed the updates, open up the BDE and make sure you see the changed values.
Then, reboot your PC. That should fix it for you.
3225 Shallowford Road, Ste 330
Marietta, GA 30062
Источник
An error occurred while initializing borland database engine
Давно и безуспешно пытаемся разобраться с данным сообщением: An error occurred while attempting to initialize Borland Database Engine (error $2501).
У нас есть проект, пишущийся на Delphi , конфигурация для которого хранится в БД формата Paradox, работаем соответственно через BDE. При запуске второй программы подключающейся к БД возникает выше описанное сообщение. Рассматривали через отладчик, данная проблема возникает где-то глубоко, в момент открытия компонента DataBase.
Первый раз данная проблема у нас возникла с появлением XP sp1, до того момента в ходу была какая-то другая ХР, в которой все работало. К счтастью на тот момент в W2000 все работало, но недавно от пользователей начали поступать жалобы, что в W2000 sp4 уже не работает.
Кто-нибудь знает что это за беда и как с ней бороться?
|
От: | SkySandy |
Дата: | 19.07.04 07:46 | |
Оценка: |
Здравствуйте, orient, Вы писали:
O>Здравствуйте.
O>Давно и безуспешно пытаемся разобраться с данным сообщением: An error occurred while attempting to initialize Borland Database Engine (error $2501).
O>У нас есть проект, пишущийся на Delphi , конфигурация для которого хранится в БД формата Paradox, работаем соответственно через BDE. При запуске второй программы подключающейся к БД возникает выше описанное сообщение. Рассматривали через отладчик, данная проблема возникает где-то глубоко, в момент открытия компонента DataBase.
O>Первый раз данная проблема у нас возникла с появлением XP sp1, до того момента в ходу была какая-то другая ХР, в которой все работало. К счтастью на тот момент в W2000 все работало, но недавно от пользователей начали поступать жалобы, что в W2000 sp4 уже не работает.
O>Кто-нибудь знает что это за беда и как с ней бороться?
Это известная беда. Мммм. Сделай так: Сразу после возниконовения ошибки, не выходя из программы, запусти Database Desktop и попробый открыть любую таблицу.
Попробовал? Тогда получишь другое сообщение об ошибке, которое укажет что нужно делать и в чем проблема
|
От: | orient |
Дата: | 19.07.04 09:21 | |
Оценка: |
Имеется в виду сообщение «Insufficient memory for this operation»?
Что-то, как-то не понятно чего делать дальше.
Виртуальную память увеличивали, без изменений.
|
От: | SkySandy |
Дата: | 19.07.04 09:43 | |
Оценка: |
Здравствуйте, orient, Вы писали:
O>SkySandy
O>Имеется в виду сообщение «Insufficient memory for this operation»?
O>Что-то, как-то не понятно чего делать дальше.
O>Виртуальную память увеличивали, без изменений.
Так увеличивать то нужно память для BDE.
Посмотри BDE Administrator.
Мой совет: увеличь все параметры от значений по умолчанию в 4 раза.
По крайней мере у меня после этого уже ошибки уже не сыпались.
Источник
An error occurred while initializing borland database engine
Пожалуйста, выделяйте текст программы тегом [сode=pas] . [/сode] . Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля. Обязательно указание:
1) типа базы данных (Paradox/Oracle/Interbase и т.п.)
2) способа доступа к базе данных (ODBC/ADO/DAO/BDE и т.п.)
Например: Paradox/BDE, MS Access/ADO
Имеется машина с установленной Windows 2000 prof. SP4
BDE 5.01
При запуске некоего DELPHI-приложения, кот. работает с MS SQL 2000 с правами Администратора, все проходит нормально. Причем можно (даже нужно) запустить несколько экземпляров этого приложения одновременно.
Но когда пытаешься запустить то же приложение без прав Администратора (т.е. простым пользователем), оно запускается ровно 1 раз. На вторую загрузку приложения вываливается ошибка:
An error occurred while attempting to initialize the Borland Database Engine (error $2B32);ошибкa BDE=11058;категория ошибки43;подкод ошибки=50;ошибка сервера=0-An error occurred while attempting to initialize the Borland Database Engine (error $2B32)
Вообще, ошибка $2B32 — это ошибка из разряда «Os Error not handled by Idapi»
11058 : $2B32 : Share violation. (http://community.borland.com/article/0,1410,15283,00.html)
Т.е. ошибка, которая, как мне кажется, вытекает из-за недостатка у пользователя куда-то прав. А вот куда.
ЗЫ. Если дать права локального Администратора этому пользователю, то все начинает работать, но это НЕПРИЕМЛИМО!
Источник
Scenario
An error occurred while attempting to initialize the Borland Database engine (error $210D) prompted when open another QNE Delphi application
The error may happen anytime during usage of the app.
The error is most likely caused by insufficient shared memory that is available for the database engine usage. Thus, the resolution for the error is by increasing the shared memory available for the BDE.
Solution
1. Open Control Panel.
2. Search for and open BDE Administrator.
3. Go to tab “Configuration”
4. Expand Configuration.
5. Expand System.
6. Open the INIT definition.
7. Modify and enter the value of SHAREDMEMLOCATION and SHAREDMEMSIZE according to the amount of physical memory (RAM) the computer has, based on table below.
Physical Memory (RAM) Size |
SHAREDMEMLOCATION |
SHAREDMEMSIZE |
2 GB |
0x2BDE |
2048 |
4 GB |
0x5BDE |
4096 |
8 GB |
0x7BDE |
8192 |
8. The changes are saved automatically. Restart the computer when done for the changes to take effect.
** Learn more about Azure Cloud
** Learn more about QNE Hybrid Cloud Software
Следующая ситуация:
Машина, работает под Windows 7 (или более поздней ОС). Память более 3 Гб. (На XP64 не проверял)
При запуске более 1 программы, которой нужен BDE, возникает ошибка инициализации BDE (210D).
Насколько я понял, эта ошибка вызвана некорректным распределением памяти под задачи этого движка.
Не буду углубляться в подробности, оно нам не надо. Нам надо решить проблему.
Поехали.
Самое сложное — найти программу BDEAdmin. Она находится в той папке, куда был установлен BDE.
(Например вот такой путь: C:Program FilesCommon FilesBorlandBDE)
Важно! Нажимаем правой кнопкой мыши и выбираем «Запустить от имени администратора«. Без этого изменения не запишутся и программа зависнет.
Далее переходим в закладку Configuration. В ней выбираем System->INIT
И изменяем 2 параметра в зависимости от того, сколько у нас памяти в компьютере (посмотреть это можно в «Мой компьютер» (нажимаем правой кнопкой) ->Свойства)
2 GB памяти RAM: (обычно при таком объеме памяти проблем не возникает. Приводится на всякий случай)
SHAREDMEMLOCATION: 0x2BDE
SHAREDMEMSIZE: 2048
4 GB памяти (RAM):
SHAREDMEMLOCATION: 0x5BDE
SHAREDMEMSIZE: 4096
8 GB памяти или больше (12,16…) (RAM):
SHAREDMEMLOCATION: 0x7BDE
SHAREDMEMSIZE: 8192
Кстати, раз уж мы сюда зашли, то и не мешало бы увеличить кол-во MAXFILEHANDLES до 100.
После внесения новый параметров сохраняем изменения (Object -> Apply)
Важно! Обязательно перезапустите все программы, которые работают с базами BDE. Причем, завершить надо все программы, чтобы движок выгрузился из памяти, а потом уже запускать программы снова.
Если этого не сделать, то программы будут сообщать о другой ошибке: BDE error ($251E).
Поэтому изменяйте эти параметры в удобное время для перезапуска программ.
Люди редко добиваются успеха, если заняты тем, что не доставляет им удовольствия. /Дейл Карнеги/
Insufficient memory for this operation ($2501)
Ошибка: ваша программа (или другая программа, использующая BDE) исчерпала всю память
доступную BDE.
Решение:
1) Закройте все программы использующие BDE.
2) Найдите программу BDEADMIN.EXE. Обычно она располагается в «Program
FilesBorland…».
3) Запустите BDEADMIN.EXE и перейдите на закладку Configuration.
4) В дереве должен быть элемент «Configuration». Если он не раскрыт,
то раскройте его.
5) Затем раскройте элемент «System». В нем выберите «INIT».
6) На правой панели найдите элемент «SHAREDMEMSIZE». Поменяйте его значение
на 4096.
7) Затем в главном меню нажмите «Object» и «Apply».
Нажмите «OK» на вопрос «Save all edits…».
После этого попробуйте запустить программу снова. Если проблема повторяется,
то измените значение SHAREDMEMSIZE на 4096 и SHAREDMEMLOCATION на 5BDE. После изменения
значений запустите еще раз вашу программу. Если и после этого она не запускается,
то поменяйте SHAREDMEMSIZE на 8192. Если ошибка повторяется, то поменяйте SHAREDMEMLOCATION
на 6BDE. Если ничего не получилось, то попробуйте другие значения SHAREDMEMLOCATION,
следуя нижеследующим инструкциям.
Shared memory conflict ($210D)
Ошибка: BDE пытается использовать область в памяти, которая уже используется операционной
системой или другой программой.
Решение:
1) Закройте все программы использующие BDE.
2) Найдите программу BDEADMIN.EXE. Обычно она располагается в «Program
FilesBorland…».
3) Запустите BDEADMIN.EXE и перейдите на закладку Configuration.
4) В дереве должен быть элемент «Configuration». Если он не раскрыт,
то раскройте его.
5) Затем раскройте элемент «System». В нем выберите «INIT».
6) На правой панели найдите элемент «SHAREDMEMLOCATION». Поменяйте его
значение на 5BDE.
7) Затем в главном меню нажмите «Object» и «Apply».
Нажмите «OK» на вопрос «Save all edits…».
Другие возможные значения: 1000, 7000, 7F00. Если ни одно из указанных
значений не устраняет проблему, то попробуйте 2000, 3000, 4000 и т.д. или другие
значения в зависимости от типа операционной системы:
Windows 95/98: SHAREDMEMLOCATION от 9000 до FFFF
Windows NT/2000: SHAREDMEMLOCATION от 1000 до 7F00.
Insufficient shared memory available ($251E)
Ошибка: вашей программе недостаточно памяти для BDE.
Решение:
Попробуйте решения из описанных выше случаев.
Обалдеть, только думал, чтобы тему завести — возникла проблема аж на двух объектах.
Вот что нашел.«В документации трактуется как конфликт при доступе к памяти совместного доступа (error Shared Memory Conflict ($210D, 8461)). И поведение похоже. Загружается первая программа(всё нормально).
Загружается вторая. При инициализации выдаёт ($210D). Если в этот момент закрыть первую программу, то загрузка второй завершиться успешно. При этом. Если теперь запустить первую программу, а затем выгрузить вторую (которая давала ошибку) и загрузить её снова , то загрузка пройдёт успешно.Решение нашёл в параметрах конфигурации BDE
ConfigurationSYSTEMINIT
параметр SHAREDMEMLOCATIONNT 2000 Ru
значение увеличивал с 1000 с шагом 1000 на 3000 ошибка исчезла»Источник.
Вчера на одном из проблемных объектов пробовал, там ситуация такая: сервер выделенный, при загруженном сервере перестали запускаться Редактор и Отчеты. Сервер закрываю — все ОК.
Поставил SHAREDMEMLOCATION = 2048 — вроде все стало грузиться нормально, сегодня менеджеры будут гонять.Решать проблему надо, ибо случается
Алексей Аркадьев
Когда заказчик ищет волшебника, то чаще всего он находит сказочника.
Если у Вас есть вопрос по поддержке — напишите его на форуме, я обязательно отвечу, если знаю ответ.
Если Вам нужны какие-то файлы, пишите на почту: support@carbis.ru, но вначале посмотрите в разделе для скачивания.
Для коммерческих вопросов:
+7 (495) 740-49-91, или на почту: sales@carbis.ru
bde
Table of Contents
Borland Database Engine (BDE)
Borland Database Engine (BDE) is the Windows-based core database engine and connectivity software behind Borland Delphi, C++Builder, IntraBuilder, Paradox for Windows, and Visual dBASE for Windows.
TNS uses the BDE to connect the front end TNS apps like TNS Client, TNS Reservations etc… to the backend Firebase database.
History
Borland’s Turbo Pascal had a “database” Toolbox add-on, it was the beginning of the Borland compiler add-ons that facilitated database connectivity. Then came the Paradox Engine for Windows – PXENGWIN – which could be compiled into a program to facilitate connectivity to Paradox tables.
The first DLL-based connectivity engine was ODAPI (Open Database API). It represented Borland’s attempt to centralise connectivity in its suite of applications which included the brand-new Paradox for Windows 4 and Quattro. With version 4.5 / 5.0 of Paradox for Windows, this database engine was crystallised as IDAPI.
In 2000, Borland introduced a new SQL driver architecture called dbExpress, which deprecated BDE SQL links technology.
Design
The included set of database drivers enables consistent access to standard data sources: Paradox, dBASE, FoxPro, Access, and text databases. You can add Microsoft ODBC drivers as needed to the built-in ODBC socket. Optionally, Borland’s SQL Links product provides access to a range of database management systems (DBMS), including Informix, DB2, InterBase, Oracle, and Sybase.
BDE is object-oriented in design. At runtime, application developers interact with BDE by creating various BDE objects. These runtime objects are then used to manipulate database entities, such as tables and queries. BDE’s application program interface (API) provides direct C and C++ optimized access to the database engine, as well as BDE’s built-in drivers for dBASE, Paradox, FoxPro, Access, and text databases.
The core database engine files consist of a set of DLLs that are fully re-entrant and thread-safe. Included with BDE are a set of supplemental tools and examples with sample code.
BDE system is configured using the BDE Administrator (BDEADMIN.EXE).
Included with BDE is Borland’s Local SQL, a subset of ANSI-92 SQL enhanced to support Paradox and dBASE (standard) naming conventions for tables and fields (called “columns” in SQL). Local SQL lets you use SQL to query “local” standard database tables that do not reside on a database server as well as “remote” DBMS servers. Local SQL is also essential to make multi-table queries across both local standard tables and those on remote SQL servers.
The older name for the BDE API is the “Integrated Database Application Program Interface” or “IDAPI”.
Known Issues
Error $210D
To avoid the following error,
You are unable to login. The server is returning the following error: An error occurred while attempting to initialize the Borland Database Engine (error $210D)
make sure that you change the configuration tab’s Shared Memory settings. They can be found here:
The settings that you use should depend on the amount of physical memory that your workstation has.
Run the BDE Admin program, C:Program Files (x86)Common FilesBorland SharedBDEBDEADMIN.EXE
, as a Windows administrator when you make these changes.
Record Key Deleted
Record/Key Deleted (RKD) Error When Editing TNS Trips
The RKD error occurs because of a bug in how the Borland Database Engine (BDE) uses indexes. When this BDE bug is invoked it is because the BDE is
unable to retrieve the record from the database. The BDE then makes an assumption that the record, or it’s key, has been deleted. This seems to happen,
sometimes, when the index spans more than one field and the key value for one of the fields is NULL. In the case of dates NULL=TBA.
I have noticed that the RKD error occurs when trying to make changes to trips that have TBA start times. The start time is one of the fields in the index when
trips are sorted by Start Time. By changing the sort to Trip number you are telling TNS to use a different index. You can then edit the trip, including adding a start
times for all trips that are TBA.
Note that if even just one trip on a reservation is TBA that one missing time may cause the RKD error to orrcur for any other trip on the reservation even if the
other trip has a start time.
Record/Key Deleted Error in Other Contexts
In general I have observed that the RKD error occurs when the values of the field being used in the index being applied in the TNS application is long, and/or
across multiple fields, and has values that are the same for the first (left most) of characters of the field.
So far RKD errors have occurred on the following TNS forms:
-
TNS Employee Occurs when there are a number of employees with close to the same name.
-
TNS Properties Occurs when trying to change invoice item types that are similar to others.
-
TNS Client Occurs when trying to change services that have a series id that is similar to others.
-
TNS Client Occurs in Series list when series codes are similar to each other.
-
TNS Client Occurs creating a new client when client name is close to an exising client’s name.
-
TNS Reservation Occurs in trip grid as described previously
Record/Key Deleted Work Arounds
-
Check if the TNS application you are using has the option to sort using a different key. For example if you get an RKD error when trying to make changes to a trip in TNS Reservations or TNS Times do the following:
-
Click menu item “Trip|Sort By Trip Number”
-
Make your edit.
-
You are done.
-
-
Options exist to sort on alternate keys for the following:
-
TNS Reservations: Sort trips by start date or trip id.
-
TNS Client: Sort client by name or client id.
-
TNS Client: Sort series services by trip number or by trip start day.
-
TNS Employee: Sort employees by name or by employee id.
-
TNS Properties: Sort invoice item types by item type or leave unsorted.
-
-
In the case of an RKD error when inserting record:
-
Record menu|copy,
-
cancel editing
-
insert record
-
Record menu|paste
-
-
Exit all TNS programs. Go to your Windows temporary files folder and delete all files. Then try restarting your workstation. I have noticed that one user can get the RKD error and another user on a different day will not.
-
Temp folder Windows XP:
C:Documents and SettingsjonathanelkinsLocal SettingsTemp
-
Temp folder Windows 7/10:
C:UsersjonathanelkinsAppDataLocalTemp
-
-
Use WISQL or IBExpert to make changes to the data that you are trying to modify.
-
Use WISQL or IBExpert to make changes to the key field of the record containing the data that you are trying to modify then use TNS to make your changes. Make the key field value very different than others in the table. After you have made changes you can change the key field back to what it was.
-
Coding Workaround: Jonathan provides alternate index options in TNS contexts where the RKD occurs.
-
Ultimate Workaround: Jonathan removes the BDE from TNS Applications. This is a big job.
BLOB Errors
TNS uses a database datatype know as a Binary Large Object, or BLOB, to store notes, report specifications, and images. You may, on occasion, experience problems with the BDE and BLOBs.
Examples
-
BLOB not opened.
-
BLOB already opened.
-
Invalid BLOB handle in record buffer.
-
BLOB not found.
Steps
Do the following to get rid of BLOB errors:
-
Exit all TNS programs.
-
From the BDE Administrator screen set the value for the highlighted fields as shown below for each TNS database that you use.
-
Close the BDE Administrator saving all edits.
-
If you still get BLOB errors after making these changes check that you did indeed make the changes as shown below.
-
If you are sure that the changes were saved and you still get BLOB error let TNS Support know.
-
You are done.
Tips & Traps
-
Trap: Make sure you scroll off each line after you change it.
-
Trap: When you try to save the BDE on a Windows 7 machine it hangs. It still saves but it hangs. Kill the task with Windows task manager. If you go back into the BDE Admin you will see that your changes were saved.
Launching the BDE Administrator
Method 1
-
From your menuing system (VTT, PAT, Wilson etc Menu),
-
go to the TNS Menu and click on the BDE link.
-
You are done.
Method 2
-
From the Windows Start button
-
Run|“C:Program FilesBorlandCommon FilesBDEbdeadmin.exe”
-
You are done.
References
· Last modified: 2019/12/11 01:55 (external edit)