Здравствуйте, Sergey Storozhevykh, Вы писали:
SS>Здравствуйте, Гость, Вы писали:
Г>>Вопрос в следующем на Windows 2000 не срабатывает вызов IoRegisterFsRegistrationChange и не даёт возможности определить, когда произошло монтирование диска.
SS>С помощью IoRegisterFsRegistrationChange вы регистрируете свой фильтр для получения нотификаций о появлении файловой системы (когда файловая система вызывает IoRegisterFileSystem/IoUnregisterFileSystem). При получении такой нотификации фильтр должен прицепиться к CDO файловой системы (на примере sfilter см. SfAttachToFileSystemDevice). Момент монтирования тома можно определить, фильтруя запросы IRP_MN_MOUNT_VOLUME к CDO файловой системы. Это все есть в sfilter.
Спасибо за ответ я попытаюсь уточнить свой вопрос. Функция IoRegisterFsRegistrationChange среди своих параметров имеет функцию нотификации SfNotification, в которой и происходит вызов SfAttachToFileSystemDevice. Я поставил DbgPrint в функцию SfNotification для отслеживания хоть какой-нибудь её активности ещё до вызова SfAttachToFileSystemDevice. После того как всё запущенно и я начинаю вставлять вынимать диски подключать и отключать флешь никакие мои действия не приводят к срабатыванию SfNotification в Windows 2000 даже при запуске драйвера из под boot mode. Как это побороть?