【问题标题】:Why doesn't VFP .NET OLEdb provider work in 64 bit Windows?为什么 VFP .NET OLEdb 提供程序不能在 64 位 Windows 中工作?
【发布时间】:2010-09-05 06:27:45
【问题描述】:

我使用 VB 编写了一个 Windows 服务,它从 Visual Foxpro 数据库中读取一些遗留数据以插入到 SQL 2005 中。问题是这种使用在 Windows server 2003 32 位中运行良好,但客户端最近移至 Windows 2003 64 位,现在该服务将无法工作。我收到一条消息,指出未找到 VFP .NET OLEdb 提供程序。我进行了研究,一切似乎都表明没有解决方案。任何帮助,请...

【问题讨论】:

    标签: .net sql-server-2005 oledb legacy visual-foxpro


    【解决方案1】:

    您是否尝试在高级编译器选项中将目标 CPU 更改为 x86 而不是 "Any CPU"?我知道这通过强制使用 32 位版本解决了其他 OLEDB 提供程序的一些问题。

    【讨论】:

    • @Paul:我也遇到了这个问题。但是,我的 sln 大约有 10 个项目。我是否需要为所有项目或仅“启动”项目更改此设置?谢谢!
    • @Ken:对不起。我不确定,也无法轻松设置测试。我的猜测是启动项目 + 任何使用 OLEDB 提供程序的项目都会导致问题。
    • 谢谢,不用担心,我让它工作了。但是对于其他阅读本文的人,我只在启动项目中更改了设置,并且成功了。似乎这应该是解决方案设置而不是项目设置。哦,好吧。
    【解决方案2】:

    您需要在编译时将目标CPU 设置为x86 以强制您的代码使用VFP OLE Db provider32 bit 版本。

    Microsoft has stated 表示没有计划发布 Visual FoxPro OLE Db 提供程序的64-bit 版本。值得一提的是,微软有 also stated 表示 VFP 9 是 Visual FoxPro 的最终版本,支持将在 2015 结束。如果您需要VFP 9OLE DB 提供程序,您可以获取它here

    【讨论】:

      【解决方案3】:

      Sybase Anywhere 有一个OLEDB provider 用于VFP 表。页面中说服务器支持64 bit Windows,不知道OLEDB provider

      支持 64 位 Windows 和 Linux 服务器

      为了进一步增强可扩展性,在适用于 Windows 和 Linux 的 Advantage 数据库服务器中添加了对 x86_64 架构的支持。在具有 x86_64 处理器和 64 位操作系统的计算机上,Advantage 数据库服务器现在可以使用超过 4GB 的内存。额外的内存将允许更多用户同时访问服务器,并增加服务器在处理查询时可以缓存的信息量。

      我自己没有尝试过,但是 VFP 新闻组的 some people 报告说它工作正常。

      Link to the Advantage Server / VFP Page

      【讨论】:

        猜你喜欢
        • 2014-12-24
        • 1970-01-01
        • 2020-04-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多