Получение «системной ошибки 126» при выполнении «Тестового» соединения из диспетчера ODBC Windows.
- установлен сервер mysql 5.7
- код соединителя mysql C ++, клонированный из github (извлечение в ветку 5.3).
- Установлена последняя версия MDAC и CMAKE.
Создан проект / решение VC ++ путем выполнения следующих команд.
c:\mysql-connector-odbc>set MYSQL_DIR=c:\mysql-5.7.25-win32
c:\mysql-connector-odbc>cmake -G "Visual Studio 12 2013" .
в Visual Studio 2015 версии 14, файл встроенного решения.(с использованием режима отладки)
Скопировал всю DLL (myodbc5a.dll
для ANSI, myodbc5w.dll
для UNICODE и myodbc5S.dll
для настройки) и соответствующие файлы LIB в системную папку C:\windows\system32
.
Созданы драйверы Unicode и Ansi.Проверено, что драйверы установлены в системном реестре.
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers]
myodbc-installer.exe -d -a -n "MySQL ODBC 5.3 Unicode Driver" -t "DRIVER=C:\mysql-connector-odbc\lib\Debug\myodbc5w.dll;SETUP=C:\mysql-connector-odbc\lib\Debug\myodbc5S.dll"
myodbc-installer.exe -d -a -n "MySQL ODBC 5.3 Ansi Driver" -t "DRIVER=C:\mysql-connector-odbc\lib\Debug\myodbc5a.dll;SETUP=C:\mysql-connector-odbc\lib\Debug\myodbc5S.dll"
Здесь я указал путь сборки драйвера.В этом случае я могу получить экран конфигурации ODBC.Если я создаю драйвер без указания пути к драйверу (см. c:\windows\system32
), при добавлении / настройке DSN в диспетчере ODBC появляется системная ошибка 126.
myodbc-installer.exe -d -a -n "MySQL ODBC 5.3 Unicode Driver" -t "DRIVER=myodbc5w.dll;SETUP=myodbc5S.dll"
myodbc-installer.exe -d -a -n "MySQL ODBC 5.3 Ansi Driver" -t "DRIVER=myodbc5a.dll;SETUP=myodbc5S.dll"
Создан системный DSN (testansi
и testunicode
) с использованием ODBC Data Source Administrator (32 бита) после создания драйвера с точкой 7.
Когда я выполняю тестовое соединение, в диалоговом окне Windows появляется следующее сообщение об ошибке.
Указанный драйвер не может быть загружен из-за системной ошибки 126. Указанный модуль не найден.
(Драйвер ANSI MYSQL ODBC 5.3, c: \ mysql-connector-odbc \ lib \ release \ myodbc5a.dll)
Сбой проверки соединения.Это должно пройти.