У меня есть служба Windows, написанная на C # с платформой .NET 2.0, которая использует FileSystemWatcher для мониторинга определенных каталогов на предмет изменений.Некоторые из этих каталогов могут находиться на съемных носителях, таких как USB-накопитель.Когда новый диск подключен к системе, я получаю уведомление через запрос WMI и могу установить новый FileSystemWatcher.Все это хорошо работает.
Сложность в том, что я хочу, чтобы пользователь мог извлечь диск с помощью приложения Windows «Безопасное извлечение устройства», но Windows сообщает, что диск занят, потому что я наблюдаю за ним.через FileSystemWatcher и сообщает пользователю, что диск не может быть удален.
Тогда мой вопрос: как моя служба Windows может узнать, когда пользователь запрашивает извлечение, чтобы я мог удалить монитор файловой системы и разрешить запрос?преуспеть?