Правила для «Дата изменения» папок в проводнике Windows - PullRequest
53 голосов
/ 22 июня 2009

Как Windows Explorer определяет поле «Дата изменения» для папок? [В сторону: я знаю, что это вопрос с точки зрения исследователя, но такое поведение может быть полезным для кодирования действий типа поиска / сортировки]

Есть ли где-нибудь однозначное описание - поиски Microsoft, MSDN, Google и Stack Overflow не увенчались успехом.

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

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

Тем не менее, я смотрю на некоторые каталоги, которые, кажется, не соответствуют этим основным правилам - бег по дереву, которое у меня есть (даты в формате ДД / ММ / ГГГГ):

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)

Ответы [ 2 ]

27 голосов
/ 26 сентября 2017

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

Время последнего изменения папки обновляется для следующих действий:

  • новый файл или папка прямо в целевой папке
  • переименованный файл или папка прямо в целевой папке
  • удаленный файл или папка прямо в целевой папке
  • Hardlink создать / удалить / переименовать - так же, как файлы
  • символьная ссылка на файл / папку создать / удалить / переименовать
  • Соединение каталогов создать / удалить / переименовать

не обновляется для следующих действий:

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

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

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

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

...