开发环境:WinXP专业版、VB6+SP6企业版程序中用到了数据控件(DATA1)和MSFLEXGRID控件,以及一个数据库文件(ACCESS2000格式),在VB中运行程序、编译后运行均正常。但移到其它系统中(Win98+Office2000+VB6)运行,则提示“运行时错误‘3170’ 找不到可插入的ISAM”这是怎么回事啊?怎么解决?
开发环境:WinXP专业版、VB6+SP6企业版程序中用到了数据控件(DATA1)和MSFLEXGRID控件,以及一个数据库文件(ACCESS2000格式),在VB中运行程序、编译后运行均正常。但移到其它系统中(Win98+Office2000+VB6)运行,则提示“运行时错误‘3170’ 找不到可插入的ISAM”这是怎么回事啊?怎么解决?
1、没有安装相应的数据库驱动程序。你可以使用RegEdit查看HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.5\Engines(VB6为...\Jet\4.0\...),从这里你可以看到当前系统安装了多少驱动程序,每个驱动都是由哪些文件组成,请检查一下你所需要的数据库格式的驱动文件是否被拷贝到System目录中。更详细的介绍可以参考微软的Knowledge Base的文章:“Q240377 OWTO: Insuring Jet 3.5 Is Installed Correctly (Part I)”和微软的Knowledge Base的文章:“Q245524 OWTO: Insuring Jet 3.5 Is Installed Correctly (Part II)”。在这两篇文章中详细地列出了到底ISAM包括哪些文件和注册表设置(VB 5.0以后版本将有关信息保存在注册表中,而不是INI中)。
2、指定数据库时所使用字符串有错误。原来我们对QA000115 "在VB中如何实现把当前库或表转换为另外一种数据库文件"的回答有一处错误,访问Excel 95文件应该指定使用'EXCEL 5.0;',而不是'EXCEL 7.0;'。VB 5.0没有定义'EXCEL 7.0;'这种方式。如果在指定数据库方式时出现错误,VB也会产生这条错误信息。
http://www.china-askpro.com/msg2/qa56.shtml