Я новичок в С# и должен разработать приложение Windows Form на С#. Это приложение должно отслеживать следующие вещи.
- Контролируйте приводы CD/DVD как внешние, так и внутренние.
- Отслеживайте файлы, которые создаются, изменяются и удаляются на CD/DVD-дисках.
Я могу получить системное уведомление о вставке CD/DVD-привода с помощью RegisterNotification
и путем отслеживания WM_DEVICECHANGE
сообщений в методе WndProc
.
Приведенная выше реализация позволяет мне узнать, когда к ПК подключено новое устройство.
Проблема, с которой я сталкиваюсь, заключается в том, как отслеживать изменения файлов, происходящие на CD/DVD (запись/модификация). Одним из вариантов является опрос файлов на CD/DVD в качестве фонового задания. Но это будет как крайний вариант.
Я нашел IMAPI
через который мы можем записывать на CD/DVD, но мне просто нужно следить за изменениями файлов в целях аудита.
Пожалуйста, укажите мне правильное направление, как получать изменения файлов в уведомлении CD/DVD в моей программе?
Я пробовал FileSystemWatcher
, но он не работает с приводами CD/DVD.
Обновлено 7 февраля 2018 г.:
Другой подход, который я смог найти, заключался в использовании WMI
queries, которые прикреплены к WMI Events
. Я нашел вопрос Best way to detect dvd insertion in drive c#
, который может также держать ответ. Я хотел знать, возможно ли обнаружение модификации файловой системы DVD в WMI и могут ли какие-либо эксперты поделиться запросом на то же самое. Я надеюсь, что Аршад сможет помочь в этой области.