Unable to find the callback library jcb.dll (or one of its dependencies)

Для дефрагментации БД Exchange на компьютере, где не установлены компоненты управления Exchange, вы, вероятно, воспользуетесь статьёй Microsoft 244525: How to run Eseutil on a computer without Exchange Server. Я воспользовался этой статьёй для дефрагментации БД Exchange 2003 на свободном сервере с установленной Windows Server 2008 R2.

Через некоторое время работы eseutil (когда процесс использовал чуть больше 2 ГБ оперативной памяти), я получил ошибку, описанную в статье 273087: Error With Jcb.dll While Running Eseutil. К сожалению, описанные в ней способы мне не помогли: при нажатии кнопки Cancel, я получал ошибку «Operation terminated with error -2102 JET_errCallbackNotResolved, A callback function could not be found) after 1168.136 seconds.».

В итоге, воспользовавшись Process Monitor’ом, я выяснил, что для Windows Server 2008 R2 описанных в оригинальной статье Microsoft и в сообщении в треде «Re: JCB.DLL Not Found Error» файлов недостаточно — нужен ещё 1 файл: ntlsapi.dll. Я скопировал его из исходной системы Windows Server 2003 R2 SP2 с работающим Microsoft Exchange 2003 SP2 на целевую систему Windows Server 2008 R2 SP1, на которой производил дефрагментацию, и всё прошло нормально.

2 thoughts on “Unable to find the callback library jcb.dll (or one of its dependencies)”

Leave a Reply to Kirill Nikolaev Cancel reply

Your email address will not be published. Required fields are marked *