При запущенном Access ошибка открытия BDE
01.03.2016 10:17
#
На ПК установлена Windows 7 x64.
При запущенном Access документе Инфо-Бухгалтер
выдает ошибку открытия BDE (скрин прикладываю).
Как только закрываю Access,
Инфо-Бухгалтер открывается нормально, ошибок не выдает.
Если сначала открываешь Инфо-Бухгалтер,
а потом базу Access (тот же самый документ),
то они работаю нормально в паре.
Можно как-то исправить, чтобы две программы работали нормально?
- 323 просмотра
В справке Инфо-Бухгалтера 8 посмотрите статью "Настройки BDE"
(введите в поле поиска в панели инструментов окна справки).
Обратите внимание на настройки разделяемой памяти (shared memory).
Вкратце, надо изменять параметр SHAREDMEMLOCATION до исчезновения конфликта.
Добрый день!
Нашел этот параметр в настройка BDE, экспериментировал со значениями SHAREDMEMLOCATION(1000,3000,4000,3BDE,4BDE,9BDE, и т.д.).
Ошибка осталась...
Установил значение SHAREDMEMLOCATION на 2BDE.
Теперь то открывается, то нет, через раз.
Но прогресс есть...
При запущенном BDEADMIN и не важно, какой стоит параметр SHAREDMEMLOCATION,
обе программы открыватся нормально без ошибок.
При чем не важно, в какой последовательности.
Как только закрываю BDEADMIN, опять ошибка...
Прин скрин прикпрепляю.
Может кто сталкивался?
Что еще можно сделать?
Больше 4A00 лучше не ставить, а то будут конфликты с DLL-ями,
которые там располагает загрузчик Windows.
2BDE - это значение по умолчанию, которое ставит Инфо-Бухгалтер.
Я бы попробовал близкие значения: 2000, 2100, 2200...
Надо найти свободное окошко а общем адресном пространстве.
Требования к окошку можно понизить, уменьшив его размер.
Попробуйте поставить SHAREDMEMSIZE = 2048.
BDEADMIN с правами Администратора запускаете?
Запускаю BDEADMIN с правами администратора.
Значения SHAREDMEMLOCATION ставил 2000, 2100, 2500, 2700, 2900.
Ошибка осталась.
Понижал SHAREDMEMSIZE = 2048 все так же....
Есть еще идеи?
Прин скрин прикрепляю.
Проверьте, что Инфо-Бухгалтер видит эти же значения.
Справка->Компьютер->Кнопка BDE.
Если там другие значения видны, то поставьте галочки и нажмите кнопку "Исправить".
Настройки BDE могут быть в трех разных местах:
- в реестре
- в файле С:\Program Files (x86)\Borland\Common Files\BDE\IDAPI.CFG
- в файле <Пользователь>\AppData\Local\VirtualStore\Program Files (x86)\Borland\Common Files\BDE\IDAPI.CFG
Нажатие на кнопку Исправить синхронизирует реестр и IDAPI.CFG и очищает VirtualStore.
Проверил Инфо-Бухгалтер.
Он значения видит, верные галочки не пришлось ставить нигде.
Но кнопку Исправить все равно нажал ))))
По пути c:\Максим\AppData\Local\VirtualStore\Program Files (x86)\Borland\Common Files\BDE\IDAPI.CFG нет такого файла.
Я же написал - могут.
Он там появится, если BDEADMIN не из-под администратора запускался хоть раз.
Причем, Инфо-Бухгалтер будет видеть настройки из файла в VirtualStore.
Скачайте программку VMMap здесь.
При запуске выбираете процесс Инфо-Бухгалтера и смотрите блоки памяти, которые shareable.
Аналогично смотрите для Access.
Сделал как написано, два принт-скрина прикрепляю.
Ничего не увидел))))
Нда... Очень странно ведет себя BDE.
Значения, которые я устанавливаю в BDEADMIN (под адм.), попадают в IDAPI.CFG, но не в реестр.
Программы по факту используют значения из реестра, а не из IDAPI.CFG...
Это показывает программа VMMap.
По кнопке "Исправить" в Инфо-Бухгалтере значения устанавливаются и в IDAPI.CFG, и в реестр.
Но тут принудительно устанавливается рекомендуемые значения 2BDE и 32768,
которые в данном случае нас не устраивают.
Вижу выход только в одном.
Руками в реестре поставить нужные значения, а не через BDEADMIN.
Я для эксперимента поставил в
HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Database Engine\Settings\SYSTEM\INIT
SHAREDMEMLOCATION=1200
SHAREDMEMSIZE=4096
и VMMap увидела эти изменения в адресном пространстве Инфо-Бухгалтера: