Я написал инструмент резервного копирования, способный резервировать файлы и изображения томов для Windows. Чтобы определить, какие файлы были изменены, я использую журнал изменений Windows. Я уже использую функцию теневой копии для последовательной копии файлов и образов томов.Измените журнал для блоков в Windows (NTFS)
Чтобы определить, какие блоки были изменены, я использую хеши в данный момент. Это означает, что весь том должен быть прочитан один раз (потому что для того, чтобы увидеть, какой блок изменил хэши всех блоков, нужно вычислить). Резервное копирование, интегрированное в Windows 7, позволяет создавать инкрементные тома без проверки всех блоков. Я не смог найти API для своего рода журнала изменений уровня блока.
Кто-нибудь знает, как получить доступ к этой информации? (я готов глубоко погрузиться в внутренние части NTFS - даже чтение и разбор специальных файлов)
Создание драйвера (фильтра) было бы в порядке. Проблема в том, что это проект с открытым исходным кодом, и я не могу позволить себе (или лучше: не хочу позволить себе) 500-летнюю годовую плату за сертификат 64-битного окна. Единственный вариант, который я вижу, это создать теневую копию, а затем как-то узнать, какие окна сохраняются в этой теневой копии. Это имеет два недостатка: теневую копию нельзя удалить (стоит пробел), и нет никакой документации о теневых копиях (в формате диска). Нужно было бы полностью переделать все это. – UrOni
Если бы не идея, это была плата. Другая проблема с подходом к теневой копии заключается в том, что реализация может различаться в зависимости от используемого поставщика VSS. –
Немного поздно к этому обсуждению, но в случае, если кто-то все еще ищет это ... –