C# 如何配置BDE以使用.net应用程序连接到现有Paradox db?

C# 如何配置BDE以使用.net应用程序连接到现有Paradox db?,c#,.net,database,oledb,paradox,C#,.net,Database,Oledb,Paradox,希望你能找到熟悉这种情况的人。我已经12年多没有接触过悖论了,我在这方面找到的大多数帖子都有5年多的历史了 我创建了一个C应用程序来读取Paradox.db文件,使用OLEDB和Borland数据库引擎BDE来检索事务代码。我无法控制Paradox系统,只能通过UNC路径访问.db文件。系统的原始开发人员已不再从事业务,因此没有支持。因此,我必须为我的客户问题找到一个解决方案 为了开发,我在本地复制了相关的.db文件,访问它们时没有问题。但是,当我尝试访问live文件时,我得到的错误是它们受另一

希望你能找到熟悉这种情况的人。我已经12年多没有接触过悖论了,我在这方面找到的大多数帖子都有5年多的历史了

我创建了一个C应用程序来读取Paradox.db文件,使用OLEDB和Borland数据库引擎BDE来检索事务代码。我无法控制Paradox系统,只能通过UNC路径访问.db文件。系统的原始开发人员已不再从事业务,因此没有支持。因此,我必须为我的客户问题找到一个解决方案

为了开发,我在本地复制了相关的.db文件,访问它们时没有问题。但是,当我尝试访问live文件时,我得到的错误是它们受另一个.LCK文件的控制。删除.LCK文件可以解决访问问题,但显然这不是解决方案

现有系统的服务器是一台Win7机器,3个客户端运行我假设的Borland/Paradox应用程序

是否有办法配置BDE或其他解决方案,以允许使用现有的.LCK文件访问实时文件?我在BDE NET DIR设置中尝试了不同的值


我唯一能看到的另一个选择是将整个.db文件加载到内存中,我有代码可以在没有BDE的情况下完成这项工作,然后找到我的事务值,这并不理想,因为这需要大约15秒,而且这是一个销售点应用程序,它需要更快。在这方面,通过OLEDB选择语句非常有效。

在BDE Admin中的Net Dir设置中,您需要指定其他应用程序访问pdoxusrs.Net文件的网络共享路径。如果您可以查看其他一台客户端计算机,您应该在该计算机上打开BDE Admin,然后在应用程序运行的计算机上应用相同的设置。我尝试将NET DIR指向网络路径,而其他计算机没有安装BDE Admin。我假设他们使用某种客户机/服务器方法来访问文件,因为服务器上没有.db文件的共享。我必须为我的应用程序创建一个。啊哈!服务器上的某个地方有一个目录,其中包含一个名为pdoxurs.net的文件。您需要具有从计算机写入该目录的权限,并将BDE NET DIR设置设置为该文件夹。或者您需要在通过网络协议与之通信的服务器计算机上运行自己的服务器应用程序。我终于有机会解决这个问题。我无法通过将客户端BDE安装指向服务器上的映射驱动器或UNC文件夹使其工作,因为它需要引用C:驱动器上的本地路径。我在客户机C驱动器上创建了相同的路径,并将PDOXUSRS.net文件复制到它,现在我可以从客户机查询所需的实时数据。这会导致实时系统出现任何问题吗?查询很简单,即:选择TransactionMount From TransactionID=IDI在BDE Admin中的Net Dir设置中,您需要指定其他应用程序访问pdoxusrs.Net文件的网络共享路径。如果您可以查看其他一台客户端计算机,您应该在该计算机上打开BDE Admin,然后在应用程序运行的计算机上应用相同的设置。我尝试将NET DIR指向网络路径,而其他计算机没有安装BDE Admin。我假设他们使用某种客户机/服务器方法来访问文件,因为服务器上没有.db文件的共享。我必须为我的应用程序创建一个。啊哈!服务器上的某个地方有一个目录,其中包含一个名为pdoxurs.net的文件。您需要具有从计算机写入该目录的权限,并将BDE NET DIR设置设置为该文件夹。或者您需要在通过网络协议与之通信的服务器计算机上运行自己的服务器应用程序。我终于有机会解决这个问题。我无法通过将客户端BDE安装指向服务器上的映射驱动器或UNC文件夹使其工作,因为它需要引用C:驱动器上的本地路径。我在客户机C驱动器上创建了相同的路径,并将PDOXUSRS.net文件复制到它,现在我可以从客户机查询所需的实时数据。这会导致实时系统出现任何问题吗?查询很简单,即:从TransactionID=ID的事务中选择TransactionMount