Ошибка добавления odbc dsn c windows system32 sqlsrv32 dll

  • Remove From My Forums
  • Вопрос

  • При запуске клиентского приложения 1С:Предприятие, выскакивает ошибка «Для доступа к базе данных требуется ODBC-драйвер для MS SQL Server версии 3.50.0303 или старше». Насколько я понимаю драйвер стоит по умолчанию более старший. Лечится ли это? Или это проблема приложения?

Ответы

  • Проблема для 1С 7.7 решается следующим образом:

    1. в windowssystem32 заменяем файлы sqlsrv32.dll и sqlsrv32.rll на аналогичные из XP, предварительно перехватив ownership и full control на себя.

    2. устанавливаем крайнюю сборку 1С — 7.70.027 (должна быть у вашего продавца)

    3. в каждый каталог базы (если у вас их несколько) кладем пустой файл OrdNoChk.prm (иначе 1С будет говорить про неправильный порядок сортировки и вылетать)

    4. наслаждаемся жизнью и продолжением работы 1С 7.7 под Вистой.

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

    • Помечено в качестве ответа

      26 октября 2009 г. 7:59

Здравствуйте! С наступающим Всех.
Такое дело.
Каким образом программно можно добавить или настроить «Источник данных ODBC»?
Пробую делать так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWAREODBCODBC.INI", true);
            // Открыли папку , true означает - хотим ли мы записывать в этот раздел реестра ? 
            RegistryKey wKey = key.CreateSubKey("aliasbd");
            // Создали новую папку в реестре
            wKey.SetValue("Database", "test");
            wKey.SetValue("Description", "тестовая база");
            wKey.SetValue("Driver", @"C:Windowssystem32SQLSRV32.dll");
            wKey.SetValue("LastUser", Environment.UserName);
            wKey.SetValue("Server", "TEST-SERVER");
            wKey.SetValue("Trusted_Connection", "Yes");
            
            // MessageBox.Show("Параметры сохранены .");

но выходит так что данные добавляются в ветку реестра
HKEY_LOCAL_MACHINESOFTWAREWow6432NodeODBC
А нужно в HKEY_LOCAL_MACHINESOFTWAREODBC
хотелось бы иметь возможность редактировать источник данных и программным способом добавлять новый в WinXP(x32)/WinXP(x64)/Win7(x32)/Win7(x64) и т.д.
Как такое реализовать?
Спасибо!

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

Обновлено 25.08.2020

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. Надеюсь, что у меня и у вас все же перестанут использовать устаревший софт.

  • Remove From My Forums
  • Question

  • To all,

    When I try to create a DSN for a SQL Server, I get the error:

    «Setup routinesfor the SQL Server ODBC driver could not be accessed.  Reinstall the driver»

    The OS is WindowsXP SP2.

    I installed SQL Server 2005.

    I checked the MDAC component using a Checker Component application and there are not file mismatches.

    The version of MDAC is 2.8 SP1.

    I tried registering odbcconf.dll.  It successfully registered but I still can’t create a DSN.

    Does anyone know where I can download the ODBC driver for SQL Server?

    Thanks,

    Gloria

Answers

  • I solved the problem.

    I had sqlsrv32.dll and MDAC would not let me reinstall.

    I found an application, Component Checker on the web and it determined that I was missing the file:

    sqlsrv32.rll.

    When I installed that file I could create a DSN for SQL Server.

    Thanks for the reply.

  • Remove From My Forums
  • Question

  • To all,

    When I try to create a DSN for a SQL Server, I get the error:

    «Setup routinesfor the SQL Server ODBC driver could not be accessed.  Reinstall the driver»

    The OS is WindowsXP SP2.

    I installed SQL Server 2005.

    I checked the MDAC component using a Checker Component application and there are not file mismatches.

    The version of MDAC is 2.8 SP1.

    I tried registering odbcconf.dll.  It successfully registered but I still can’t create a DSN.

    Does anyone know where I can download the ODBC driver for SQL Server?

    Thanks,

    Gloria

Answers

  • I solved the problem.

    I had sqlsrv32.dll and MDAC would not let me reinstall.

    I found an application, Component Checker on the web and it determined that I was missing the file:

    sqlsrv32.rll.

    When I installed that file I could create a DSN for SQL Server.

    Thanks for the reply.

RRS feed

  • Remove From My Forums
  • Вопрос

  • Hi everyone,

    I have a problem with the SQL server driver.

    I’m using a 32-bit application in my laptop, so with a new update of
    SQL Server Management Studio this driver was missing and
    doesn’t appears in the Drivers menu 
    in OBDC Data Source Administrator  (only appears the
    name SQL Server) and I cant connect my application with our server.

    There is some issue with this driver? Is it possible that the driver has been corrupted?

    Thanks

Все ответы

  • My application needs the SQLSRV32.dll to work correclty, so with this new driver that you says, it will work?

  • My application needs the SQLSRV32.dll to work correclty, so with this new driver that you says, it will work?

    Why does it that particular DLL? It is a very old version of the ODBC driver.

    Also, this driver comes with the OS, so installation of SSMS should not affect it. Have you looked in C:WindowsSysWOW64 for the DLL?


    Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

  • My application needs the SQLSRV32.dll to work correclty, so with this new driver that you says, it will work?

    Why does it that particular DLL? It is a very old version of the ODBC driver.

    Also, this driver comes with the OS, so installation of SSMS should not affect it. Have you looked in C:WindowsSysWOW64 for the DLL?


    Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

    I talked with a developer of this application and says that this dll is used specific for the SQL server connection into the app, actually when I open this app says «[OBDC Driver Manager] Data source name not found and no default driver specified»
    and the option «SQL Server» in the tap «Driver» in the OBDC Data source Administrator (32-bit) is empty, btw the others drivers are selected the dll correctly. 

    And yes, I looked in C:WindowsSysWOW64 and there is it, so I dont know why in OBDC drivers menu is empty. 

  • What about downloading and installing ODBC Driver for SQL Server 17, which is the most recent version?

    As I said, the old driver is exactly that: old.


    Erland Sommarskog, SQL Server MVP, esquel@sommarskog.se

    • Предложено в качестве ответа

      24 января 2020 г. 8:19

  • Hi Carlos.Guerrero, 

    Please download and install new ODBC Driver.

    Download ODBC Driver for SQL Server

    Best Regards,

    Rachel 


    MSDN Community Support
    Please remember to click «Mark as Answer» the responses that resolved your issue, and to click «Unmark as Answer» if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to
    MSDN Support, feel free to contact MSDNFSF@microsoft.com.

Здравствуйте!

Имеется:

w2008 r2 + SQL 2005 + 1С 8.2 сервер

В SQL много лет есть база для 1с 7.7. Запуск 1С77 локально с клиентских машин (на сервере 1С не запускаем).

Переводим все на 1С 8, добавив базу в SQL для последней. Завелось все нормально. НО…

Новый COMОбъект(«ADODB.Connection») …. Open

Говорит:

Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): Не удается загрузить указанный драйвер из-за системной ошибки  193:  (SQL Server, C:Windowssystem32SQLSRV32.dll).

_____________

Когда работали с 7.7, то везде и всюду заменяли odbcbcp.dll, sqlsrv32.dll, sqlsrv32.dll на старые версии для совместимости (в т.ч. на сервере), и я предполагаю, что это как раз с этим и связано.

Сейчас нужно оставить рабочую 7.7 и заставить работать COMОбъект(«ADODB.Connection») на 1С8. Тесты методом «тыка» с заменой файлов на разные версии во время работы 150-200 человек в двух базах не очень удобны.

ВОПРОСЫ:

1. Поскольку 1С 7.7 запускается локально на клиентских машинах (и вроде как библиотеки должны использоваться клиентские), то поломается ли работа 1С 7.7, если восстановить оригинальные файлы на сервере?

2. На что может повлиять замена файлов при связке w2008 r2 + SQL 2005 в работе последнего?

Файл sqlsrv32.dll считается разновидностью DLL-файла. DLL-файлы, такие как sqlsrv32.dll, по сути являются справочником, хранящим информацию и инструкции для исполняемых файлов (EXE-файлов), например sapisvr.exe. Данные файлы были созданы для того, чтобы различные программы (например, Windows) имели общий доступ к файлу sqlsrv32.dll для более эффективного распределения памяти, что в свою очередь способствует повышению быстродействия компьютера.

К сожалению, то, что делает файлы DLL настолько удобными и эффективными, также делает их крайне уязвимыми к различного рода проблемам. Если что-то происходит с общим файлом DLL, то он либо пропадает, либо каким-то образом повреждается, вследствие чего может возникать сообщение об ошибке выполнения. Термин «выполнение» говорит сам за себя; имеется в виду, что данные ошибки возникают в момент, когда происходит попытка загрузки файла sqlsrv32.dll — либо при запуске приложения Windows, либо, в некоторых случаях, во время его работы. К числу наиболее распространенных ошибок sqlsrv32.dll относятся:

  • Нарушение прав доступа по адресу — sqlsrv32.dll.
  • Не удается найти sqlsrv32.dll.
  • Не удается найти C:WindowsSystem32sqlsrv32.dll.
  • Не удается зарегистрировать sqlsrv32.dll.
  • Не удается запустить Windows. Отсутствует требуемый компонент: sqlsrv32.dll. Повторите установку Windows.
  • Не удалось загрузить sqlsrv32.dll.
  • Не удалось запустить приложение, потому что не найден sqlsrv32.dll.
  • Файл sqlsrv32.dll отсутствует или поврежден.
  • Не удалось запустить это приложение, потому что не найден sqlsrv32.dll. Попробуйте переустановить программу, чтобы устранить эту проблему.

Файл sqlsrv32.dll может отсутствовать из-за случайного удаления, быть удаленным другой программой как общий файл (общий с Windows) или быть удаленным в результате заражения вредоносным программным обеспечением. Кроме того, повреждение файла sqlsrv32.dll может быть вызвано отключением питания при загрузке Windows, сбоем системы при загрузке sqlsrv32.dll, наличием плохих секторов на запоминающем устройстве (обычно это основной жесткий диск) или, как нередко бывает, заражением вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.

файл: SQLSRV32.dll
Размер файла: 460.08K
md5 hash: e01db549292540e9df71a76e70dafdb5
OS: Windows XP, Vista, 7, 8, 10
Немного: x32/x64
Создание файла: 06.08.2000
Просмотры сайта: 10,384
Скачать SQLSRV32.dll (460.08K) →

Если у вас есть ошибка, связанная с SQLSRV32.dll, проверьте, есть ли файл на компьютере. Dll обычно должен быть в папке C:WINDOWSsystem32, C:WindowsSysWOW64 или в папке приложения, в которой происходит ошибка. Если вы не знаете, что такое DLL — прочитайте статью в Википедии о Microsoft Dynamic-link library

Как установить SQLSRV32.dll файл?

  1. В Windows щелкните мышью на «Пуск» (внизу слева) и найдите «Выполнить», а затем щелкните мышью на «Выполнить».
  2. Тип CMD и щелчок мыши Ok
  3. В черном окне напишите: regsvr32 SQLSRV32.dll а затем нажмите Enter
  4. Установка займет всего несколько секунд, и вы получите сообщение, когда она будет завершена.

Зарегистрируйте файл dll с помощью Regsvr32

Возможно, вам придется перезагрузить компьютер, если вы все еще получаете ошибки DLL

RegSvr32.exe имеет следующие параметры командной строки:

Regsvr32 [/u] [/n] [/i[:cmdline]] SQLSRV32.dll

/n - не вызывайте DllRegisterServer; эта опция должна использоваться с /i
/s – Бесшумный; не отображать сообщения
/u - Отменить регистрацию сервера
/i - Вызовите DllInstall, передавая его необязательно [cmdline]; когда он используется с /u, это вызывает удаление DLL

Обновление драйверов

Ошибки DLL могут быть вызваны ошибками, устаревшими драйверами устройств. Чтобы устранить эту возможность, обновите драйверы для всех аппаратных устройств, установленных на вашем компьютере. Драйверы устройств для OEM-систем можно получить на веб-сайте производителя системы или на вашем собственном диске, который прилагается к покупке вашего компьютера. Snappy Driver Installer Это мощная программа для установки отсутствующих драйверов и обновления старых драйверов.

Наиболее распространенная ошибка, связанная с файлом:

Подобные файлы DLL:

sqlite3.dll

sqlncli.dll

SQLUNIRL.dll

SqlServerSpatial110.dll

sqlora8.dll

SQLDMO.dll

SQLSRV32.dll

sqlsut.dll

SQLMMC.dll

SqlUserInstance.dll

sqlconf.dll

sqlos.dll

sqlmanager.dll

sqlvdi.dll

SqlServerSpatial.dll

sqloledb.dll

sqlmap.dll

sqlite.dll

SQLRESLD.dll

sqlmin.dll

sqllib80.dll

sqlparse.dll

sqlceme35.dll

SQLQRY.dll

sqlwoa.dll

sqlspars.dll

SQLite352.dll

SQLsnmp.dll

sqlinf32.dll

sqlboot.dll

Возможно, вам также будет интересно:

  • Ошибка днс на икс бокс 360
  • Ошибка добавить бумагу в универсальный лоток
  • Ошибка днс в вай фае
  • Ошибка дня рождения в паспорте
  • Ошибка днс в xbox 360

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии