Руководство разработчика

Настройки BDE

Правильно настроенное BDE необходимо для правильной работы Инфо-Бухгалтера 8. Для Инфо-Бухгалтера 10 BDE нужно для работы с таблицы dBase и Paradox (в частности, для взаимодействия с Инфо-Бухгалтером 8), но программа может работать и без него. Также в некоторых случаях возможна работа с таблицами Paradox и dBase посредством ODBC.

Изменять настройки BDE можно с помощью программы BDE Administrator, входящей в комплект поставки BDE. Запускать ее нужно от имени администратора, иначе возможно создание файлов или ключей реестра для настроек в VirtualStore, что может привести к проблемам. Например, может получиться, что запущенные от имени администратора и от имени простого пользователя программы будут пользоваться различными настройками (одна из которых, скорее всего, будет неправильной). Поэтому при настройке BDE нужно проверить папку VirtualStore в %LOCALAPPDATA% и ветку HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE в реестре; и если там есть виртуализованные настройки, то их нужно удалить. В папке VirtualStore - это файл idapi32.cfg в папке в VirtualStore, соответствующей папке установки BDE; в реестре - ключи в подразделе Borland.

Из-за важности BDE для Инфо-Бухгалтера 8, правильные настройки BDE применяются при его установке. Также в Инфо-Бухгалтере 8 реализована система диагностики BDE, которая позволяет проверить настройки и их исправить.

Настройки приведены в таком виде, в каком они представляются в реестре (и в программном интерфейсе BDE). В интерфейсе программы Bde Administrator разделы для отдельных пунктов могут быть немного другими.

НазваниеПравильное значениеПримечание
Drivers\DBASE\INIT\VERSION4.0
Drivers\DBASE\INIT\TYPEFILE
Drivers\DBASE\INIT\LANGDRIVERdb866ru0Кодировка
Drivers\DBASE\TABLE CREATE\LEVEL5
Drivers\DBASE\TABLE CREATE\MDX BLOCK SIZE16384 (1024 - 16384)
Drivers\DBASE\TABLE CREATE\MEMO FILE BLOCK SIZE16384 (1024 - 16384)
Drivers\PARADOX\INIT\VERSION4.0
Drivers\PARADOX\INIT\TYPEFILE
Drivers\PARADOX\INIT\LANGDRIVERancyrrКодировка
Drivers\PARADOX\TABLE CREATE\LEVEL7
Drivers\PARADOX\TABLE CREATE\BLOCK SIZE32768 (2048 - 32768)
Drivers\PARADOX\TABLE CREATE\FILL FACTOR95 (75 - 95)
Drivers\PARADOX\TABLE CREATE\STRICTINTEGRTYTRUE
SYSTEM\FORMATS\DATE\SEPARATOR.Настройки отображения даты
SYSTEM\FORMATS\DATE\MODE1
SYSTEM\FORMATS\DATE\FOURDIGITYEARFALSE
SYSTEM\FORMATS\DATE\YEARBIASEDTRUE
SYSTEM\FORMATS\DATE\LEADINGZEROMTRUE
SYSTEM\FORMATS\DATE\LEADINGZERODTRUE
SYSTEM\FORMATS\NUMBER\DECIMALSEPARATOR.Настройки отображения чисел
SYSTEM\FORMATS\NUMBER\THOUSANDSEPARATOR
SYSTEM\FORMATS\NUMBER\DECIMALDIGITS2
SYSTEM\FORMATS\NUMBER\LEADINGZERONTRUE
SYSTEM\FORMATS\TIME\TWELVEHOURFALSEНастройки отображения времени
SYSTEM\FORMATS\TIME\AMSTRINGAM
SYSTEM\FORMATS\TIME\PMSTRINGPM
SYSTEM\FORMATS\TIME\SECONDSTRUE
SYSTEM\FORMATS\TIME\MILSECONDSFALSE
SYSTEM\INIT\VERSION4.0
SYSTEM\INIT\LOCAL SHARETRUE
SYSTEM\INIT\MINBUFSIZE128 (32 - 65535)
SYSTEM\INIT\MAXBUFSIZE32768 (32 - 65535)
SYSTEM\INIT\LANGDRIVERancyrrКодировка
SYSTEM\INIT\MAXFILEHANDLES48 (48 - 4096)
SYSTEM\INIT\SYSFLAGS0
SYSTEM\INIT\LOW MEMORY USAGE LIMIT32
SYSTEM\INIT\AUTO ODBCFALSE
SYSTEM\INIT\DEFAULT DRIVERPARADOX
SYSTEM\INIT\MEMSIZE16 (8 - 205)
SYSTEM\INIT\SHAREDMEMSIZE32768 (2048 - 32768) см. 1
SYSTEM\INIT\SHAREDMEMLOCATION2BDE (1000 - 4A00) 16ричная система; см. 1
SYSTEM\INIT\SQLQRYMODE
SYSTEM\INIT\MTS POOLINGFALSE
Drivers\PARADOX\INIT\NET DIRсм. описание

1 Настройки разделяемой памяти

Если эти настройки неверны, то могут возникать ошибки при запуске нескольких программ, использующих BDE. Это связано с тем, что BDE использует участок памяти, разделяемый между различными процессами. Для корректной работы эта разделяемая память (shared memory) должна отображаться на один и тот же адрес. Этому могут помешать размещенные немного после это адреса DLL и данные; в этом случае и будут возникать ошибки инициализации. Т.к. в современных версиях Windows (Vista и более поздние) DLL произвольным образом располагаются после адреса 5000, то SHAREDMEMLOCATION нужно устанавливать так, чтобы разделяемая память не перекрывалась с этим интервалом – отсюда верхнее значение границы 4A00. Если ошибка продолжает возникать после исправления настроек, нужно попробовать разные значения SHAREDMEMLOCATION в указанном интервале и, возможно, уменьшить значение SHAREDMEMSIZE.

Настройка NET DIR

NET DIR – это папка, которая должна:


См. также: