Подтвердить что ты не робот

Правила для "Дата изменения" в папках в проводнике Windows

Как Windows Explorer определяет поле "Дата изменения" для папок? [Помимо этого: я знаю, что это задание с точки зрения конкретного исследователя, но поведение может быть полезно для кодирования операций поиска/сортировки типов)

Есть ли окончательное описание этого в любом месте - поиски Microsoft, MSDN, Google и Qaru не увенчались успехом.

Личные эксперименты показывают, что в дереве папок:

  • когда папка/файл добавляется/удаляется в папке, обновляется дата содержащаяся папка.
  • когда содержимое файла изменено, папка с содержимым не изменяется

Тем не менее, я смотрю на некоторые каталоги, которые, похоже, не соответствуют этим основным правилам - с помощью дерева, которое у меня есть (даты в формате DD/MM/YYYY):

folder     (date created:  2/2/2006, date modified: 2/3/2006)
  folder   (date created:  2/2/2006, date modified: 2/3/2006)
    folder (date created:  2/2/2006, date modified: 1/6/2009)
      file (date created: 27/3/2009, date modified: 2/2/2006)
4b9b3361

Ответ 1

Это не конкретный проводник, это связано с NTFS.

См. http://support.microsoft.com/kb/299648 для некоторых правил.

Примечание. Модифицированное время можно отключить с помощью параметра файловой системы, поэтому вы никогда не должны полагаться на него. Любые предлагаемые надежные методы будут оценены.

Ответ 2

Отказ от ответственности: я сам тестировал все это на Windows 10. Я не мог найти авторитетный источник, документирующий все эти поведения. Вполне возможно, что я где-то ошибся.

Последнее изменение папки обновлено для этих действий:

  • новый файл или папка непосредственно в целевой папке
  • переименован файл или папка непосредственно в целевую папку
  • удаленный файл или папка непосредственно в целевой папке
  • hardlink create/delete/rename - то же, что и файлы
  • файл/папка symlink create/delete/rename
  • каталог junction create/delete/rename

Для этих действий не обновляется:

  • измененное содержимое файла непосредственно в целевой папке
  • Изменить цель символической ссылки или соединения, содержащейся в целевой папке
  • изменение файла или подпапки/изменение даты изменения
  • редактировать основные атрибуты (скрытый/архив/система) прямого дочернего элемента
  • Сжатие/шифрование NTFS прямого дочернего элемента
  • все, что происходит в подпапке - буквально ничего
  • изменение атрибутов самой папки
  • изменение владельца /ACL самой папки
  • владелец или ACL прямого изменения ребенка
  • если папка - это соединение каталога, изменение целевого
  • добавление/удаление потоков данных в прямой дочерний файл