Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 带BDE的Paradox数据库-在数据库/表打开时强制更改磁盘_Delphi_Bde_Paradox - Fatal编程技术网

Delphi 带BDE的Paradox数据库-在数据库/表打开时强制更改磁盘

Delphi 带BDE的Paradox数据库-在数据库/表打开时强制更改磁盘,delphi,bde,paradox,Delphi,Bde,Paradox,我们有一个Paradox数据库表,我们希望使用类似DSynchronize的东西在网络上镜像它 我看到的问题是,通过BDE(Borland数据库引擎)的Paradox不会更新文件系统,直到表被关闭,或者它使用的某个缓冲区被填满 我使用了flush buffers调用,它对磁盘上的文件没有影响。在表上调用close将强制执行我正在寻找的更新,但是这是一个非常大的问题 我只是错过了某个BDE设置吗 最后,使用正确的NetDir设置通过网络共享此数据库,使更改对另一台计算机可见。这些文件看起来仍然没有

我们有一个Paradox数据库表,我们希望使用类似DSynchronize的东西在网络上镜像它

我看到的问题是,通过BDE(Borland数据库引擎)的Paradox不会更新文件系统,直到表被关闭,或者它使用的某个缓冲区被填满

我使用了flush buffers调用,它对磁盘上的文件没有影响。在表上调用close将强制执行我正在寻找的更新,但是这是一个非常大的问题

我只是错过了某个BDE设置吗

最后,使用正确的NetDir设置通过网络共享此数据库,使更改对另一台计算机可见。这些文件看起来仍然没有动过。这两个系统仅共享NetDir文件夹和Data文件夹。我只是不明白在文件没有被修改的情况下,这些更改是如何进行的,而这些文件似乎没有被修改


任何提示都将不胜感激

试试。

这是FlushBuffers内部的功能,不过我会尝试直接调用它。好的。我已经找到了我问题的答案。Paradox/BDE正在更新磁盘文件。它只是在文件中预先分配空间,所以它只需要不时地“触摸”它们。这意味着任何文件系统监控软件都不会看到正在应用的更改。此外,还需要复制索引和db文件,否则您的文件将不同步。