Site icon EfmSoft

Что означает код HRESULT 0xC80004B2 (hrDatabaseInUse)?

 
Предыдущий Следующий
hrDatabaseDuplicate hrDatabaseNotFound

hrDatabaseInUse

Что означает hrDatabaseInUse

hrDatabaseInUse (0xC80004B2) — ESE сообщает, что база данных всё ещё используется и поэтому не может быть detached, удалена или переведена в другое эксклюзивное состояние.

Что проверить

  • Сохраните путь базы, JET_DBID и JET_SESID, в которых она открыта, а также список открытых таблиц и активных транзакций.
  • Проверьте баланс JetAttachDatabase/JetOpenDatabase/JetCloseDatabase/JetDetachDatabase во всех потоках и error paths.
  • Не смешивайте этот код с corruption или file locking: сначала закройте реальные ESE references, которые удерживают базу.

Как подтвердить исправление

После закрытия таблиц, database handles и сеансов повторная эксклюзивная операция должна пройти без hrDatabaseInUse.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version