2

我正在寻找一种方法来使用符号链接或硬链接来诱使程序认为文件实际上位于网络共享上时位于特定目录中。我知道符号链接可通过 Junction 和 Vista 及更高版本获得,但这是一台 Windows XP Fat32 计算机(Junction 仅适用于 NTFS)。

有问题的程序是 AbeBooks 的 HomeBase3。据他们的技术人员称,自从从 2.3 升级到 3 后,所有网络都已禁用,唯一的方法是找到某种方法让 homebase.sqlite 文件共享给两者。问题是他们声称无法更改配置,并且程序只会查看 Shared Docs\Homebase3\ 文件夹。

我正试图帮助一家小型二手书店解决这个问题,预算非常非常有限,感谢您的帮助。

如果你想在这里弄乱它是免费的: http ://www.abebooks.com/homebase/software-inventory-management-system-catalog/

他们需要 3.0 版本来保持最新状态,但确实需要两台计算机来进行库存输入和结帐。

4

2 回答 2

0

根据 SQLite 数据库中的数据量,如果您不需要对数据库的并发写入访问权限,我建议您尝试使用 Dropbox(http://www.dropbox.com/)在计算机之间复制数据库文件(以及作为奖励,您可以在云中获得备份 :)

在每台计算机上安装 Dropbox 并为商店注册一个免费帐户。

在 Dropbox Advanced Preferences 中,您可以将 Dropbox 位置配置为 SharedDocs 文件夹。

同样在通用首选项下启用“局域网同步”,因为这将允许您的文件在网络上的计算机之间快速同步,无论互联网速度如何(甚至可能在没有互联网连接的情况下工作,但我不确定)。

如果两台计算机同时写入数据库,Dropbox 将不再能够保持同步,但会在其中一台计算机上创建“冲突副本”。您可以对这种情况进行脚本监控并提醒用户。如果发生这种情况,我想一个简单的恢复过程可能是删除“库存”输入版本,因为可以轻松地重新键入该数据。

显然,如果存储确实需要从两台计算机对数据库进行并发写访问,或者如果 SQLite 数据库太大,这将不是一个好的选择。

于 2012-02-20T05:28:12.330 回答
0

另一种解决方案可能是告诉 WinXP 您的 SharedDocs 文件夹位于文件服务器上。

根据 WinXP 配置这些路径的方式,有几种不同的方法可以做到这一点。根据 HomeBase3 查找 SharedDocs 路径的方式(在不同版本的 Windows 中具有不同的位置,因此开发人员不太可能对值进行硬编码),其中一种或两种方法可能会起作用。

  1. Windows 注册表编辑器。您可以运行 regedit.exe 并更改存储在注册表项“My Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders”下的数据。“Common Documents”设置的默认值为“%ALLUSERSPROFILE%\Documents”。您可以更改此值以指向共享网络驱动器上的文件夹。
  2. 我的电脑->属性->高级->环境变量->系统变量。只需添加一个新的系统变量 ALLUSERSPROFILE,其值包含共享网络驱动器上文件夹的路径。
于 2012-02-20T05:53:03.757 回答