Я хотел бы знать, как отслеживать изменения в режиме реального времени в файле в Windows , Я нашел другие ответы, такие как использование хвост но это работает только для файлов журналов или аналогичных, где изменения вносятся в конце файла.
В моей ситуации мне нужно отслеживать изменения в XML-файл в настоящее время. На самом деле я отслеживаю этот файл вручную:
- Скопируйте config.xml в config.backup
- Вносить изменения в основную программу через графический интерфейс (по одному)
- Сравните config.backup с config.xml, используя WinMerge
- Повторите процесс
Я хотел бы иметь что-то вроде RegFromApp, который отслеживает изменения в реестре, сделанные процессом. Я пробовал ProcMon, это указывает, что файл изменен, но не изменение, внесенное в него.
Любая идея будет очень ценится.
Благодарю.
Это невозможно (да, я сказал это слово), если файл открыт для монопольного доступа программой, выполняющей обновление. Если он открыт для общего доступа, все, что вы можете сделать, это дождаться события файловой системы, в котором оно было изменено, и затем перечитать все содержимое файла ... но к тому времени, когда вы это сделаете, оно может быть снова изменено и нет никакой гарантии, что вы можете перехватить каждую отдельную запись на стороне мониторинга.
allquixotic