如何进行修改时间的继承和传播?为了更好地提出我的问题,我将列出三个例子:
一个文件夹有三个文件。一个文件被修改(由任何用户或服务或应用程序)。这也会更改文件夹的修改时间。 (常见情况)
一个文件夹有三个文件,其中一个文件被修改(同样可以是服务,应用程序或用户)。但这并没有改变父文件夹的修改时间。
文件夹没有文件(空)。但是,假设服务ABC运行时,它会更改其修改时间。
所以我的问题是,控制所有这些是什么?是什么决定这些修改时间将如何更新?
搜索之后,我发现Registry中有一个值 NtfsDisableLastAccessUpdate
但我认为这不适用于单个文件/文件夹。请指教。
你想提到有问题的操作系统。显然你在谈论窗户,但是哪些变种?这是多年来可能发生变化的行为。另外,您是否设置了测试用例并尝试了各种方案来查看会发生什么?
—
Michael Kohne
我相信你正在混合苹果和橘子:
—
Scott
NtfsDisableLastAccessUpdate
可能与访问时间有关,问题的其余部分与修改时间有关。除此之外,它取决于应用程序的工作方式。如果它只是打开文件并写入文件,则不应将其视为对目录的修改。但是,如果它在同一目录中创建一个临时文件,然后删除它,那么 将 算作对dir的修改。某些编辑器类型的程序可以制作文件的副本,然后删除原始文件并将新文件重命名为原始名称。
斯科特,谢谢你的回复。我无法得到 “如果它只是打开文件并写入文件,则不应将其视为对目录的修改。” 我说我有一个 工作 在我的桌面上的文件夹,我打开文件夹中的文档,修改并保存它。我看到的是,作业文件夹的修改时间更改为修改最近文件的时间。这个例子不属于你提到的类别“不应该算作对目录的修改吗?”或者你的意思是MS Word删除原始文件并在每次修改我的文档时创建新文件吗?再次感谢您的帮助!
—
user3020081
@ user3020081:Microsoft Word属于(至少)我描述的最后两个类别之一。如果您打开Word文档,然后查看显示隐藏文件的文件夹(使用Windows资源管理器),或列出目录(在命令提示符下),
—
Scott
dir /a
,你会看到一个隐藏的临时文件。我不知道Word是否只是在完成后删除该文件,或者它是否删除原始文件并重命名临时文件,但结果是相同的。