防止文件被覆盖

时间:2013-11-19 00:34:28

标签: vb.net file directory

想象一下,有3个或更多独立位置可以修改文件。这些位置通过电子邮件或邮件相互通信(直接闪存驱动器恢复)。虽然有一个很大的流动空间 - 同时编辑文件并搞砸事情,但这个客户端不会改变太多。他宁愿打电话给所有人他正在进行上一次更新,或者告诉其他人他正在等待第三个人的最后更新。无论如何,在几次交流之后的某个时刻,由于参与者之一的无意错误,文件的最后版本最终会混淆。从这一点开始,每个人都通过查看文件的内容来搜索最后一个版本。

这个客户想拥有一个中心位置(实际上,他的PC就是某个位置)并让每个人(包括他自己)将任何新的或可疑的新文件复制到这个位置,但防止文件的最后一个版本被复制。从这个位置,他必须轻松复制,发送或打开文件并工作。

所以,这是我的概念(2个步骤):

第1步:我向创建或编辑此文件的主应用程序发布了广告。此广告提示用户使用编辑应用程序中的每个调用的保存命令为文件提供版本号。事实上,文件可以多次重新保存,但不被视为已修改(文件属性创建,保存等等,这里没有很大意义)。这表示用户可以取消我的广告但已保存文件,而不是保存新文件版本。

第2步:多种解决方案:

解决方案答:我正在考虑使用文件夹/文件监视,并防止覆盖该文件的最新版本。如您所知,FileSystemWatcher将触发更改/删除等事件,事后事后如此,我必须事后复制覆盖文件(带一些技巧)。

解决方案B:拥有一个存储所有文件版本的数据库,并内置一些shell扩展来从数据库中提取/查看文件。将所有复制/粘贴的文件移动到数据库(我的程序文件夹),并在观察者触发更改/删除事件后恢复工作文件夹中的最新文件。

解决方案3:找出内置的Windows工具(API等),通过一些编程非常依赖它。

有什么想法吗? 提前谢谢。

0 个答案:

没有答案