【问题标题】:FoxPro and old softwaresFoxPro 和旧软件
【发布时间】:2015-05-11 06:22:04
【问题描述】:
我有一个在 XP 上运行的旧软件。当我在另一台电脑上运行它时,会出现以下错误
odbc 驱动程序管理器,未找到数据源名称且未指定默认驱动程序。
我该如何解决这个问题?
注意:在我在数据源中检查管理工具的旧系统上是有 foxpro 驱动程序。
【问题讨论】:
标签:
software-design
visual-foxpro
windows-xp-sp3
【解决方案1】:
从技术上讲,该消息看起来像是尝试通过不存在的 DSN(“数据源名称”)创建 ODBC 连接失败。 VFP 命令窗口示例:
? SQLCONNECT("DsnDoesNotExist")
AERROR(laErrors)
DISPLAY MEMORY LIKE laErrors
如果您的软件的原始维护者没有提供任何“设置”文档,您可以在源代码中找到所需数据源的名称,或者使用 Vfp 的 SqlConnect()function 作为代码行,或者作为存储在 Vfp myDatabase.DBC 中的“连接”对象
如果您还没有源代码,可以尝试在旧PC的Windows“ODBC数据源管理器”中找到相关的“用户DSN”或“系统DSN”。
该 DSN 将包含所需的连接字符串,包括驱动程序信息,例如“PostgreSQL”或“MS SQL Native Client”等。
如果新系统是 64 位版本,您需要使用 32 位版本的管理工具(通常是 C:\WINDOWS\SysWOW64\odbcad32.exe)来重新创建 DSN。
FWIW,Vfp 本身不一定需要用于 ODBC 连接的“DSN” - 如果您有源代码,请参阅 VFP 文档中的 SqlStringConnect() 函数或尝试网络搜索