***关于DELPHI中数据库共享问题!!特急!!(100分)

  • 主题发起人 主题发起人 dbs
  • 开始时间 开始时间
D

dbs

Unregistered / Unconfirmed
GUEST, unregistred user!
在局域网中的客户机上打开服务器端的数据库时,如服务器上的程序或客户机上的程序处在打开状态。
则客户机上的程序或服务器上的程序不能打开服务器端的数据库,出现的错误信息如下:
Exception EDBEngineError in module sys110.exe at 00069BBE.
Directory is controlled by other .net file Directory:c:/File G:/yz110/DB110/PDoxusrs.lck.

sys110.exe为客户端程序,与服务器共享一个数据库。G:/是从服务器上映射过来的。
库是用的DELPHI自带的PARDOX建的库。(通过常规BDE访问表)
PDoxusrs.lck是在运行时产生。而且我在打开表时是用的共享方式。是BDE或DELPHI还是其它
什么原因?希望各位大虾们帮忙!感激不尽!!~~~~~~~~~~~~~
特急!!先给100分!解决问题后另开题给分!!
 
为什么用 Paradox 作数据库服务器呢?它只是一个桌面数据库系统。
你的程序根本不能称之为 C/S 结构的程序,而是磁盘共享而已,很多年前的方法啊。
 
TO:BaKuBaKu
可以解决吗?
 
欢迎大家讨论!解决后立即该分!绝不食言!
 
全部打开相同Paradox表的应用程序的 Session.NetFileDir 必须用相同的
路径名访问网络控制文件。
比如,a机影射g盘,Session.NetFileDir:='G:/yz110/DB110/'
那么,b也一样要影射为g盘,用Session.NetFileDir:='G:/yz110/DB110/'
不能这台机是 c:/ 那台机是 g:/ 。
所有的机的Session.NetFileDir要一样,而且要指向相同的文件。
因此,你的服务器上也要和客户机一样影射那个目录为g:,
在本机除了用网络影射外,还可以用 subst ,在nt还可以直接
将本机的那盘指定为g
 
PiPi 说的方法可以解决一定的问题,但不是长久之计,Paradox 缺少许多大型数据库的特征,
否则 Inprise 就不会花大力气开发 InterBase 了。
 
我去试试!成功后放分!
 
用MIDAS吧!
 
可怜的孩子,走了和我当初一样的路,不过补救的方法是有的
将数据库的目录完全共享,映射网络驱动器
打开客户端的BDE Administrator选择Configuration页
Drivers->Native->Paradox
在Net Dir上选择你映射的网络驱动器就可以了

 
暂时结束,先每人加上25分,如成功后另谢!
 
后退
顶部