连接使用VC ++ 2013内置的mysql C ++连接器时出现系统错误126

时间:2019-02-07 15:40:49

标签: mysql odbc driver

从Windows ODBC管理器执行“测试”连接时获取“系统错误126”。

  1. 已安装mysql服务器5.7
  2. 从github克隆的mysql C ++连接器代码(检出到5.3分支)。
  3. 已安装MDAC和CMAKE最新版本。
  4. 通过执行以下命令创建VC ++项目/解决方案。

    c:\mysql-connector-odbc>set MYSQL_DIR=c:\mysql-5.7.25-win32
    c:\mysql-connector-odbc>cmake -G "Visual Studio 12 2013" .
    
  5. 在Visual Studio 2015版本14中,
  6. 已构建解决方案文件。 (使用调试模式)

  7. 将所有DLL(对于ANSI,myodbc5a.dll,对于UNICODE,myodbc5w.dll,对于设置,myodbc5S.dll),以及相应的LIB文件都复制到系统文件夹C:\windows\system32中。

  8. p>
  9. 创建了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"
    
  10. 在这里,我给出了驱动程序的构建路径。在这种情况下,我可以获取ODBC配置屏幕。如果创建驱动程序时未指定驱动程序路径(请参考c:\windows\system32),则在ODBC管理器中添加/配置DSN时会出现系统错误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"
    
  11. 在创建具有第7点的驱动程序后,使用ODBC数据源管理员(32位)创建了系统DSN(testansitestunicode)。

当我执行“测试连接”时,Windows对话框中会出现以下错误消息。

  

由于系统错误126,无法加载指定的驱动程序。找不到指定的模块。

     

(MYSQL ODBC 5.3 ANSI驱动程序,c:\ mysql-connector-odbc \ lib \ release \ myodbc5a.dll)

测试连接失败。它应该通过。

0 个答案:

没有答案