我支持一些旧的Web 应用程序,用于 UI 的基于 VBScript 的 ASP 和用于业务和数据访问层的 VB6 COM 模块。上周末,我在几台 Windows 2000 服务器上安装了 DB2 Connect Enterprise Edition v8 fixpack 14,其中一个 Web 应用程序在调用内置 VBScript 函数FormatNumber时出现空数据错误。此数字数据由 SQL Server 查询检索,但填充 SQL Server 列的唯一方法是使用从前面的 DB2 查询返回的计算结果,在几个页面中进行。
当我安装 DB2 Connect EE 时,加载的组件之一是 MDAC 2.7。我按照公司的说明进行了安装,并保存了一个 ODBC 系统数据源,当我在安装后测试它时报告连接良好。
值得一提的是,生产 VB6 模块中的项目引用指向 MDAC 2.5。我已经尝试在我的测试服务器上重新编译并部署到 COM 引用 MDAC 2.7 的 VB6 模块的新版本。我的开发环境是 Windows XP Pro,安装了 MDAC 2.8 和 DB2 Connect EE v9.5。当我部署更新的 VB6 dll 时,CreateObject无法实例化类,并显示错误消息“该类不支持自动化或请求的接口”。
我已经回滚了 DB2 Connect 安装并重新安装了 DB2 运行时客户端的 v8,这是以前的环境。然而,问题仍然存在。