Не работает 1С 7.7 в Windows Server 2019

Не работает 1С 7.7 в Windows Server 2019

1с

Добрый день! Уважаемые читатели и гости одного из крупнейших IT блог в рунете Pyatilistnik.og. В прошлый раз мы с вами успешно устранили ошибку "Windows Identity Foundation 0x80096002" и поняли откуда растут корни. Сегодня я хочу показать, как я столкнулся с проблемой запуска 1с предприятия 7.7 на базе Windows Server 2019, где я получал ошибку "Для доступа к базе данных требуется ODBC-драйвер для MS SQL Server версии 3.50.0303 или старше". Хоть и старенькая версия, но даже в 2020 году она еще используется и я уверен, что моя компания не единственная в этом.

Описание проблемы

Не так давно я развернул Remote Desktop Services High Availability на базе Windows Server 2019, при попытке запустить 1С 7.7 появилась вот такая ошибка.

Для доступа к базе данных требуется ODBS-драйвер для MS SQL Server версии 3.50.0303 или старше

Как устранить ошибку

Вся проблема в том, что вам необходимо заменить три библиотеки из старенькой Windows XP, чтобы устранить несовместимость драйвера ODBC. Вот список библиотек:

  • sqlsrv32.dll
  • sqlsrv32.rll
  • sqlunirl.dll

Загружаете архив с файлами и разархивируйте их, в итоге будет папка с тремя файлами. Далее вам нужно подложить файлы в определенное место, в зависимости от разрядности вашей операционной системы:

  • Если у вас 32-х битная ОС (x86), то вы должны скопировать файлы в каталог %systemroot%\system32
  • Если у вас 64-х битная ОС (x64), то вы должны скопировать файлы в каталог %systemroot%\SysWOW64

Если не знаете какая у вас разрядность, то смотрите по ссылке. Хочу отметить, что начиная с Windows Server 2008 R2, у серверных ОС всегда 64-х битная редакция

Хочу отметить, что при копировании более свежие версии библиотек sqlsrv32.dll, sqlsrv32.rll, sqlunirl.dll уже присутствуют в операционной системе и их нужно обязательно заменить.

Заменяем библиотеки

С большой вероятностью данные файлы у вас будут заблокированы Windows и вы не сможете их подменить, для этого нужно их высвободить.

устранить несовместимость драйвера ODBC

Для освобождения файла от какого-то процесса в системе мы воспользуемся утилитой Unlocker v1.9.2. Запускаем Unlocker от имени администратора и через проводник находим ваши файлы, пути до них я описал выше. Выбираем файлы по очереди, первым у меня будет sqlsrv32.dll.

 

Разблокировка файла в Unlocker.v1.9.2

Если у него будет блокирующий процесс, то вам нужно будет выбрать пункт освободить, у меня же он не был блокирован, поэтому я просто его перемещу. Выбираем пункт "Переместить" и нажимаем "Ok".

Перемещение файла в Unlocker.v1.9.2

Указываем папку в которую вы будите перемещать файл.

Перемещение системного файла Windows через Unlocker.v1.9.2

Операция успешно выполнена и файл перемещен. Повторяем все действия для файлов sqlsrv32.rll иsqlunirl.dll.

Для доступа к базе данных требуется ODBS-драйвер для MS SQL Server версии 3.50.0303 или старше

Теперь вы спокойно можете подложить нужные вам версии и ошибка "Для доступа к базе данных требуется ODBC-драйвер для MS SQL Server версии 3.50.0303 или старше" должна пропасть.

Дополнительный метод

Если по какой-то причине замена файлов вам не помогла, то вы можете в каталоге с установленным 1С предприятием 7.7 найти файл bkend.dll и с помощью HEX-редактора внести изменения. Вам нужно найдите последовательность "83 FB 03 74" и замените ее на "83 FB 03 EB" (должно быть найдено 2 места исправления). После чего попробовать запустите 1С

Редактирование файла bkend.dll

На этом у меня все, с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org. Надеюсь, что у меня и у вас все же перестанут использовать устаревший софт.

2 Responses to Не работает 1С 7.7 в Windows Server 2019

  1. Yaromax:

    Добрый день, победить 1С7, наверное, невозможно — у компаний сложилась своя, такая роданя и уютная конфигурация, и ничего больше им не надо, никакого перехода на 1С8.х никто делать не будет, оно же работает. А то, что работает далеко не совсем хорошо, и уже давно не отвечает никаким требованиям — какая разница?

  2. Иван Семин:

    Добрый день! Это проблема многих компаний, кто не обновляет софт, но когда-нибудь придет день расплаты. Вы как специалист, можете поступить так, сделать описание по переходу и обновлению на 8-ку, отдать его руководителю. И если вдруг, что-то случится, вы спокойно скажете, я вам говорил предложение по модернизации предлагал, вы сами забраковали.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *