文件差异对比
最近有个想法。想实现文件差异简单备份。想法是。实时检测一文件夹。当我修改某保存完一文件的后。在当前目录下自动备份一个未修改前的备份文件。。。想法是通过检测文件的修改时间来实现。。。但是突然想到,这好像不好实现。比如当我随便打开一文件。。我随便修改后点击保存的时候,还要自动备份一份旧的文件。感觉实现这个功能就是个问题。。好像没办法实现吧、。。至少我新手没想到思路。。所以现在找不到方向。。。求大哥给点思路。。是寻求修改时间来备份还是其他??修改保存后实现备份。能否实现?欢迎大哥们有空帮忙解答下 robocopy搞定,收工! 使用filegettime获取修改时间。。。但是如何进入对比判定又是个问题呀= =。。迷茫 此思路可行否?在打开的同时复制原文件一份,保存退出时再判断修改的时间,如没有修改文件,则删去刚才复制的文件,否则保留此文件作为旧文件的备份。 MD5 比较文件IF 相同 Then 不用备份 ElseIF 修改时间最后的<>备份的 Then 备份 !! 为楼主这问题困扰了n久时间,如果用filegettime的话,最后修改时间并不能说明文件改了,比如加一个字符在删掉这个字符,那个时间好像也会变,所以不好说,目前没找到好办法,如果利用index service不知道是否可行 MD5
基本思路打开文件同时生成备份,检验修改后的MD5于原先MD5做对比,发生差异就不动,未发生差异就删除备份。当然你可以同时加入filegettime作为双重验证,确保精度。 有点类似CAD的保存文件后自动生成一个.bak文件。
而且怎么判断文件被打开、被保存、被关闭?是不是应该借助一个程序来启动、保存、关闭 个人认为Hook掉FileOpen和FileSave的原型就ok了,所以还是P版来回答会权威点。
页:
[1]