【问题标题】:ODBC hook / shimODBC 钩子/垫片
【发布时间】:2010-09-24 21:18:44
【问题描述】:

我有一个旧应用程序,我需要它来运行。现在它使用了一些无效的 SQL。它使用 ODBC 连接到数据库。我只想填充 ODBC,以便我可以观察无效的 SQL 并用一些有效的命令替换它。

有什么想法吗?

如果 MySQL 代理能够飞越 ODBC,它将符合要求。

http://dev.mysql.com/downloads/mysql-proxy/

【问题讨论】:

  • 编程语言?请标记。
  • @Elemental -- 我喜欢 C#...但是任何语言给我的方式都可以解决问题。

标签: windows proxy odbc


【解决方案1】:

最简单的方法是自己编写一个 shim,让旧版应用程序加载您的 shim,然后将除 SQLPrepare 和 SQLExecDirect 之外的所有 ODBC 函数调用代理到原始 ODBC 驱动程序。然后,您可以更改通过这两个函数传入的任何相关 SQL 查询。所有其他函数都不变地传递参数。

您需要将您的 shim 作为 ODBC 驱动程序“安装”在注册表中的 HKLM\SOFTWARE\ODBC\ODBCINST.INI(用于驱动程序)和 ODBC.INI(用于 DSN)下(如果在 Windows 上)。然后,您可以将旧应用程序指向您的 shim,这将动态加载原始驱动程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-08
    • 2012-06-28
    • 2014-07-22
    • 1970-01-01
    • 2021-11-09
    • 2019-09-19
    • 1970-01-01
    相关资源
    最近更新 更多